Java-流程控制_分支结构_if
一、if语句格式
1.if语句格式1
格式
if (关系表达式){
语句体;
}
执行流程
1)首先计算关系表达式的值
2)如果关系表达式的值为true就执行语句体
3)如果关系表达式的值为false就不执行语句体
4)继续执行后面的语句内容
流程图

2.if语句格式2
格式
if (关系表达式){
语句体1;
} else{
语句体2;
}
执行流程
1)首先计算关系表达式的值
2)如果关系表达式的值为true就执行语句体1
3)如果关系表达式的值为false就执行语句体2
4)继续执行后面的语句内容
流程图

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
流程图

二、代码
奇数偶数
/**
* @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)

浙公网安备 33010602011771号