Loading

if条件控制语句

流程控制语句

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

流程控制语句分类

  顺序结构

  分支结构(if, switch)

  循环结构(for, while, do…while)

顺序结构

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

顺序结构执行流程图:

分支结构之if语句

if语句格式1

格式:
if (关系表达式) {
    语句体;    
}

执行流程:

  ①首先计算关系表达式的值

  ②如果关系表达式的值为true就执行语句体

  ③如果关系表达式的值为false就不执行语句体

  ④继续执行后面的语句内容

示例:

public class IfDemo {
    public static void main(String[] args) {
        System.out.println("开始");
        
        // 如果年龄大于18岁, 就可以上网吧
        int age = 17;
        
        if(age >= 18){
            // int a = 10;
            System.out.println("可以上网吧");
        }
            
        System.out.println("结束");
    }
}
View Code

if语句格式2

格式:
if (关系表达式) {
    语句体1;    
} else {
    语句体2;    
}

执行流程:

  ①首先计算关系表达式的值

  ②如果关系表达式的值为true就执行语句体1

  ③如果关系表达式的值为false就执行语句体2

  ④继续执行后面的语句内容

示例:奇偶数

​ 任意给出一个整数,请用程序实现判断该整数是奇数还是偶数,并在控制台输出该整数是奇数还是偶数。

public class Demo2If {
    public static void main(String[] args) {
        // 程序判断一个数, 是奇数还是偶数
        int num = 9;
        
        if(num % 2 == 0){
            System.out.println("偶数");
        }else{
            System.out.println("奇数");
        }
    }
}

if语句格式3

格式:
if (关系表达式1) {
    语句体1;    
} else if (关系表达式2) {
    语句体2;    
} 
…
else {
    语句体n+1;
}

执行流程:

  ①首先计算关系表达式1的值

  ②如果值为true就执行语句体1;如果值为false就计算关系表达式2的值

  ③如果值为true就执行语句体2;如果值为false就计算关系表达式3的值

  ④…

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

/*
示例:
    定义一个在0~100之间的变量a, 90~100优秀,80~89良好,70~79中等,60~69及格,0~59请努力加油!
*/
public class Demo3If {
    public static void main(String[] args){
        int score = 65;
        if(score >= 90 && score <= 100){
            System.out.println("优秀");
        }else if (score >= 80 && score <= 89){
            System.out.println("良好");
        }else if (score >= 70 && score <= 79){
            System.out.println("中等");
        }else if (score >= 60 && score <= 69){
            System.out.println("及格");
        }else if (score >= 0 && score <= 59){
            System.out.println("请努力加油");
        }else{
            System.out.println("成绩有误!");
        }
    }
}
View Code

if语句格式3案例

/*需求:小明快要期末考试了,小明爸爸对他说,会根据他不同的考试成绩,送他不同的礼物,假如你可以控制小明的得分,请用程序实现小明到底该获得什么样的礼物,并在控制台输出。
分析:
    ①小明的考试成绩未知,可以使用键盘录入的方式获取值
    ②由于奖励种类较多,属于多种判断,采用if...else...if格式实现
    ③为每种判断设置对应的条件
    ④为每种判断设置对应的奖励
*/
import java.util.Scanner;
public class IfTest02 {
    public static void main(String[] args){
        // 1. 使用Scanner录入考试成绩
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您的成绩:");
        int score = sc.nextInt();
        // 2. 判断成绩是否在合法范围内 0~100
        if(score >=0 && score <= 100){
            // 合法成绩
            // 3. 在合法的语句块中判断成绩范围符合哪一个奖励
            if(score >= 95 && score <= 100){
                System.out.println("自行车一辆");
            }else if(score >= 90 && score <= 94){
                System.out.println("游乐场一次");
            }else if(score >= 80 && score <= 89){
                System.out.println("变形金刚一个");
            }else {
                System.out.println("挨顿揍, 这座城市又多了一个伤心的人~");
            }
        }else{
            // 非法的话, 给出错误提示
            System.out.println("您的成绩输入有误!");
        }
    }
}
View Code

 

posted @ 2021-09-30 22:14  1640808365  阅读(346)  评论(0编辑  收藏  举报