Java-流程控制_分支结构_if

一、if语句格式

1.if语句格式1

格式

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

执行流程
1)首先计算关系表达式的值
2)如果关系表达式的值为true执行语句体
3)如果关系表达式的值为false不执行语句体
4)继续执行后面的语句内容


流程图
image


2.if语句格式2

格式

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

执行流程
1)首先计算关系表达式的值
2)如果关系表达式的值为true执行语句体1
3)如果关系表达式的值为false执行语句体2
4)继续执行后面的语句内容


流程图
image


3.if语句格式3

格式

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

执行流程
1)首先计算关系表达式1的值
2)若值为true就执行语句体1,若值为false就计算关系表达式2的值
3)若值为true就执行语句体2,若值为false就计算关系表达式3的值
4)...
5)若没有任何关系表达式为true,就执行语句体n+1


流程图

image


二、代码

奇数偶数

/**
 * @Author: nsys
 * @Date: 2021-10-04 10:26
 * @Description: if_奇数偶数
 */

// 1)导包
import java.util.Scanner;
public class IfDemo {
    public static void main(String[] args) {

        // 2)创建Scanner对象
        Scanner sc = new Scanner(System.in);

        // 3)接收数据
        System.out.print("请输入整数:");
        int num = sc.nextInt();

        // 4)if判断
        if (num % 2 == 0){
            // 5)输出判断结果
            System.out.println(num + "是偶数");
        } else {
            // 5)输出判断结果
            System.out.println(num + "是奇数");
        }
    }
}

关系表达式是用num % 2 == 0,而不是num / 2 == 0,应该是取余为0,否则会有bug


屁股开花

/**
 * @Author: nsys
 * @Date: 2021-10-04 11:00
 * @Description: if_考试奖励
 */

import java.util.Scanner;
public class IfDemo2 {
    public static void main(String[] args) {

        // 实例化Scanner对象
        Scanner sc = new Scanner(System.in);

        // 接收考试成绩
        System.out.print("请输入你的考试成绩:");
        int score = sc.nextInt();

        if (score < 60) {
            System.out.println("准备屁股开花!");
        } else if (score >= 60 && score <= 70){
            System.out.println("下学期继续努力!");
        } else if (score > 70 && score <= 89){
            System.out.println("不错不错,今晚加鸡腿");
        } else if (score >= 90 && score <= 100){
            System.out.println("每天可以玩王者农药");
        } else {
            System.out.println("成绩有问题");
        }
    }
}

请输入你的考试成绩:我就不输入
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at IfDemo2.main(IfDemo2.java:16)


posted @ 2021-10-04 10:29  难删亦删  阅读(52)  评论(0)    收藏  举报