流程控制语句
程序基本结构
1.顺序结构
顺序结构表示程序中的各操作是按照它们出现的先后顺序执行的。
2. 选择结构(分支结构)
选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。
3. 循环结构
循环结构表示程序反复执行某个或某些操作,直到某条件为假(或为真)时才可终止循环。
-
在循环结构中最主要的是:什么情况下执行循环?哪些操作需要循环执行?
-
循环结构的基本形式有两种:当型循环 、直到型循环。
- 1.当型循环:表示先判断条件,当满足给定的条件时执行循环体,并且在循环终端处流程自动返回到循环入口;如果条件不满足,则退出循环体直接到达流程出口处。因为是"当条件满足时执行循环",即先判断后执行,所以称为当型循环。
- 2.直到型循环:表示从结构入口处直接执行循环体,在循环终端处判断条件,如果条件不满足,返回入口处继续执行循环体,直到条件为真时再退出循环到达流程出口处,是先执行后判断。因为是"直到条件为真时为止",所以称为直到型循环
-
任何复杂的程序逻辑都可以通过顺序、分支、循环三种程序结构实现
1. if else分支结构
格式
判断条件是否成立
若成立,则执行语句块
若不成立,则跳过语句块
if(条件表达式 1){
语句块 1;
} else if(表达式 2){
语句块 2;
}
else{
语句块 3;
}
语句块 n;
执行流程图:
实践出真理
1.判断输入的年龄是否成年
System.out.println("请输入您的年龄");
Scanner sc = new Scanner(System.in);
int age = sc.nextInt();
if (age >= 18) {
System.out.println("该年龄已成年");
} else {
System.out.println("该年龄尚未成年");
}
结果:
2.输入两个数找到最大的数
//1. 方式一
System.out.println("请输入两个整数: ");
Scanner sc = new Scanner(System.in);
int ia = sc.nextInt();
int ib = sc.nextInt();
if (ia >= ib) {
System.out.println("最大的值为: " + ia);
} else System.out.println("最大的值为: " + ib);
//2. 方式二(推荐)
System.out.println("请输入两个整数: ");
Scanner sc = new Scanner(System.in);
int ia = sc.nextInt();
int ib = sc.nextInt();
int max = ia;
if (ib > max) {
max = ib;
}
System.out.println("最大的值为: " + max);
结果:
3.判断输入的成绩是否及格
System.out.println("请输入当前的成绩: ");
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
if (score >= 60) {
System.out.println("成绩合格,继续加油");
} else {
System.out.println("成绩不合格,继续努力");
}
System.out.println("本次查询已结束");
结果:
4.判断一个整数是正数、非负数、0
System.out.println("请输入任意整数: ");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
if (num >= 0) {
if (num > 0) {
System.out.println("当前输入的整数 " + num + "是正数");
} else {
System.out.println("当前输入的整数 " + num + " 为:0 ");
}
} else {
System.out.println("当前输入的整数 " + num + "是负数");
}
输出:
5.判断用户身份信息,模拟买票
System.out.println("请谁身份信息: ");
Scanner sc = new Scanner(System.in);
String str = sc.next();
if ("军人".equals(str)) {
System.out.println("尊敬的军人,您可以免费乘车");
} else if ("学生".equals(str)) {
System.out.println("同学,你可以购买半价票");
} else {
System.out.println("您的身份信息不在优惠范围内,请购票");
}
System.out.println("购票成功,请保管好你的票");
结果:
6.计算个人所得税
- 个人所得税计算规则
个税起征点为: 5000元全月应纳税所得额(元) 税率(%) 速算扣除数(元) 全月应纳税额不超过3000元(8000) 3% 0 全月应纳税额超过3000元至12000元(17000) 10% 210 全月应纳税额超过12000元至25000元(30000) 20% 1410 全月应纳税额超过25000元至35000元(40000) 25% 2660 全月应纳税额超过35000元至55000元(60000) 30% 4410 全月应纳税额超过55000元至80000元(85000) 35% 7160 全月应纳税额超过80000元 40% 15160
// 方式一 通过表格实际计算
System.out.println("请输入您的收入:");
Scanner sc = new Scanner(System.in);
int salary = sc.nextInt();
//保持当前计算的税额与表格中的一致
salary -= 5000;
double salaryPrice = 0.0;
if (salary <= 0) {
//穷人
System.out.