前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >04-程序流程控制(上卷)

04-程序流程控制(上卷)

作者头像
软件小生活
发布2021-08-16 10:28:42
1850
发布2021-08-16 10:28:42
举报
文章被收录于专栏:软件小生活

1.程序流程介绍

1.1.举例

需求:

淘宝登录

重复做一件事

1.2.简介

在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。

2.程序流程分类

顺序结构

选择结构

循环结构

2.1.顺序结构

是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。

总的来说:写在前面的先执行,写在后面的后执行

图解:

2.2.选择结构

选择结构

也被称为分支结构。

选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码。

Java语言提供了两种选择结构语句

if语句

switch语句

2.3.循环结构

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。

3.选择结构-(if语句)

3.1.基础if语句

3.1.1.简介

If语句在java中一共有三种格式

第一种格式:

if(关系表达式) {

语句体

}

执行流程:

首先判断关系表达式看其结果是true还是false

如果是true就执行语句体

如果是false就不执行语句体

图解:

3.1.2.基础if语句实战

3.1.3.if语句的注意点

开发小结:

if语句的注意事项:

A:比较表达式好无论简单还是复杂,结构必须是boolean类型

B:if语句控制的语句体如果是一条语句,大括号可以省略,但是建议,写if的时候,永远不要省略大括号

C: if语句括号中表达式一定布尔类型,== 不要错写成 =

结论1实战:

结论2实战

结论3实战:

3.2.if语句进阶

思考:上面那种if语句的判断存在什么缺陷?能不能满足所有的需求呢?

3.2.1.简介

if语句第二种格式:

if(关系表达式) {

语句体1;

}else{

语句体2;

}

执行流程

首先判断关系表达式看其结果是true还是false

如果是true就执行语句体1

如果是false就执行语句体2

图解:

3.2.2.if语句进阶实战

未成年判断

淘宝登录

3.2.3.if语句的练习

要求:使用Scanner

练习1:判断两个数中的最大值

代码语言:javascript
复制
publicclass TT {
  publicstaticvoid main(String[] args) {
         Scanner sc = new Scanner(System.in);
         System.out.println("请输入第一个数");
  intnum1 = sc.nextInt();
         System.out.println("请输入第二个数");
  intnum2 = sc.nextInt();
  // 定义一个用来接收的变量
  intmax;
  if (num1 > num2) {
  max = num1;
         } else {
  max = num2;
         }
         System.out.println("max:" + max);
     }
}

练习2:判断一个数是奇数还是偶数并输出

代码语言:javascript
复制
publicclass Demo4 {
  publicstaticvoid main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("请输入一个数字");
  intnum = sc.nextInt();
  if(num%2==0)
      {
            System.out.println(num+"是一个偶数");
      }
  else
      {
            System.out.println(num+"是一个奇数");
      }
}

3.3.if语句和三目之间转换

我们前面讲解过三元运算符,它根据比较判断后,给出的也是两个结果,所以,这种情况和if语句的第二种格式很相似,他们在某些情况下应该是可以相互转换的。那么他们之间是没有一点区别吗?

求出两个数的最大值

代码语言:javascript
复制
publicstaticvoid main(String[] args) {
 inta = 10;
 intb = 20;
 intmax1;
 if(a>b)
       {
  max1 = a;
       }
 else
       {
 max1 = b;
       }
       System.out.println("max1:"+max1);
       System.out.println("=========================");
 intmax2;
 max2 = a>b?a:b;
       System.out.println("max2:"+max2);
 }

求出奇偶数

代码语言:javascript
复制
publicstaticvoid main(String[] args) {
  inta = 100;
  if(a%2==0)
    {
    System.out.println("100是一个偶数");
    }
  else
    {
    System.out.println("100是一个奇数");
    }
    System.out.println("===========================================");
  //String  str  = (a%2==0)?System.out.println("100是一个偶数");:System.out.println("100是一个奇数"); 错误
}

3.4.if语句进阶2

3.4.1.简介

if语句第三种格式:

if(关系表达式1) {

语句体1;

}else if (关系表达式2) {

语句体2;

}

else{

语句体n+1;

}

l 执行流程

• 首先判断关系表达式1看其结果是true还是false

• 如果是true就执行语句体1

• 如果是false就继续判断关系表达式2看其结果是true还是false

• 如果是true就执行语句体2

• 如果是false就继续判断关系表达式…看其结果是true还是false

• …

• 如果没有任何关系表达式为true,就执行语句体n+1。

图解:

3.4.2.if语句进阶实战

3.4.3.if语句的练习

要求:使用Scanner

  • 键盘录入月份的值,输出对应的季节。

季节划分

春 3、4、5

夏 6、7、8

秋 9、10、11

冬 12、1、2

代码语言:javascript
复制
public class Demo1 {
   public static void main(String[] args) {
          // 创建scaner键盘输入对象
          Scanner sc = new Scanner(System.in);
          System.out.println("请输入一个月份");
          // 接受用户的键盘输入
          int month = sc.nextInt();
          // 防止用户输入错误的月份
          if(month<1 || month>12)
          {
            System.out.println("月份只能在(1-12)之间"); 
          }
          // 根据输入的数字  判断出输出对应的中文  月份
          // 春季  3    4   5
          else if(month>=3 && month<=5)
          {
                   System.out.println("当前是春季");
          }
          // 夏季   6   7    8
          else if(month>=6 && month<=8)
          {
                   System.out.println("当前是夏季");
          }
          // 秋季  9  10   11
          else if(month>=9&&month<=11)
          {
                   System.out.println("当前是秋季");
          }
          else
          {
                   System.out.println("当前是冬季");
          }
}
}

2)编写程序,根据输入的学生成绩,给出相应的等级,90~100为优秀,80~90为良好,70~80为中等 , 60~70为及格,60分以下记为不及格,

代码语言:javascript
复制
public class Grade {
     public static void main(String[] args) {
         Scanner scanner=new Scanner(System.in);
         System.out.println("输入一个整数:");
         int num=scanner.nextInt();
         if(num>=90 && num<=100)
                 System.out.println("优秀");
         if(num>=80 && num<90)
                 System.out.println("良好");
         if(num>=70 && num<80)
                 System.out.println("中等");
         if(num>=60 && num<70)
                 System.out.println("合格");
         if(num<60)
                 System.out.println("不合格");
      }
}
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件小生活 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.程序流程介绍
    • 1.1.举例
      • 1.2.简介
      • 2.程序流程分类
        • 2.1.顺序结构
          • 2.3.循环结构
          • 3.选择结构-(if语句)
            • 3.1.基础if语句
              • 3.1.1.简介
              • 3.1.2.基础if语句实战
              • 3.1.3.if语句的注意点
            • 3.2.if语句进阶
              • 3.2.1.简介
              • 3.2.2.if语句进阶实战
              • 3.2.3.if语句的练习
            • 3.3.if语句和三目之间转换
              • 3.4.if语句进阶2
                • 3.4.1.简介
                • 3.4.2.if语句进阶实战
                • 3.4.3.if语句的练习
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档