1 概述
顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构的语句来实现。
2 形式
2.1 单分支结构
if (判断条件){
代码
}
2.2 多分支结构
if (判断条件){
满足判断条件,执行代码1
} else {
不满足判断条件,执行代码2
}
2.3 嵌套分支结构
if (判断条件1){
满足判断条件1,执行代码1
} else if (判断条件2) {
满足判断条件2,执行代码2
} else if (判断条件3) {
满足判断条件2,执行代码2
}
.......
3.案例
3.1 商品打折案例
在包day03下创建类TestDiscount.java;
需求: 接收用户输入的原价。满1000打9折;满2000打8折;满5000打5折
package partTwo;
import java.util.Scanner;
/**需求:接收用户输入的原价,满1000打9折,满2000打8折,满5000打5折*/
public class TestDiscount {
public static void main(String[] args) {
//1.提示用户输入原价
System.out.println("请输入商品原价:");
//2.接收用户输入的原价
double price = new Scanner(System.in).nextDouble();
//3.计算打折后的价格
//3.1定义变量用来保存打折后的价格
double count = price;//初始值是商品的原价
//3.2判断用户的打折段位并打折
if(price >= 5000) {//满5000
count = price *0.5;//打5折
}else if(price >= 2000) {//满2000
count = price * 0.8;//打折8折
}else if(price >= 1000) {//满1000
count = price *0.9;//打9折
}
//3.3输出用户实际支付的价格
System.out.println("您实际应该支付:"+count);
}
}
3.2 案例:统计学生分数阶段情况
在包day03下创建类testScore.java;
需求: 练习分支结构,求学员的分数段位,并判断数据的正确性;90分以上优秀;80分以上良好;70分以上一般; 60分以上及格;60分以下不及格;
package partTwo;
import java.util.Scanner;
public class TestScore {
//创建程序的入口函数
public static void main(String[] args) {
//提示学员输入成绩
System.out.println("请输入您的分数");
//接受学员输入的成绩数据,注意记得Scanner要导包
double cort = new Scanner(System.in).nextDouble();
/**
* 90分以上优秀
* 80分以上良好
* 70分以上一般
* 60分以上及格
* 60分以下不及格
*/
if(cort>100 || cort<0){
System.out.println("输入的数据有误,请重新输入");
}else if (cort>=90){
System.out.println("您的成绩为"+"优秀");
}else if (cort>=80){
System.out.println("您的成绩为"+"良好");
}else if (cort>=70){
System.out.println("您的成绩为"+"一般");
}else if (cort>=60){
System.out.println("您的成绩为"+"及格");
}else{
System.out.println("您的成绩为"+"不及格");
}
}
}
344




被折叠的 条评论
为什么被折叠?



