Java程序设计基础笔记 • 【第4章 条件结构】

本章目录

4.1 条件结构

4.1.1 程序流程控制

​4.1.2 单分支if结构

4.1.3 双分支if结构

4.1.4 实践练习

4.2 多重条件结构

4.2.1 多重条件结构

4.2.2 多重if结构

4.2.3 多重if结构的使用

4.2.4 实践练习(一)

4.2.5 实践练习(二)

4.3 嵌套条件结构

4.3.1 嵌套if结构

4.3.2 嵌套if结构的使用

4.3.3 实践练习

4.4 Switch结构

4.4.1 Switch-case结构

4.4.2 Switch-case使用

4.4.3 选择结构小结

选择结构包含:

4.4.4 实践练习

总结:


4.1 条件结构

4.1.1 程序流程控制

1、顺序结构:语句顺序处理、依次执行

2、选择结构(分支结构):单分支、多分支、双分支三种形式

3、循环结构:分为判断后执行结构和先执行后判断两种形式

4.1.2 单分支if结构

  • 选择结构又称为分支结构。
  • 当程序执行到分支判断的语句时,首先判断条件,然后根据条件表达式的结果选择相应的语句执行
  • 分支结构包括单分支、双分支和多分支三种形式。

语法:

if(条件) {
       //语句
}
  • 条件表达式的值必须为boolean类型
  • 条件为true时执行if内的代码

示例:使用if选择结构实现输入学生成绩,判断学生成绩是否及格

Scanner input = new Scanner(System.in);
System.out.println("请输入学生成绩:");   //提示输入学生成绩
int score = input.nextInt();    //从控制台接收输入的成绩
if(score >= 60) { //判断成绩是否及格
	System.out.println("成绩合格,获得软件工程师证书!");
}

示例:使用if选择结构实现判断学生机试与笔试成绩是否及格

Scanner input = new Scanner(System.in);
int writtenScore ;// 笔试成绩
int practiceScore; // 机试成绩
System.out.println(" 请输入笔试成绩:");
writtenScore = input.nextInt();
System.out.println(" 请输入机试成绩:");
practiceScore = input.nextInt();
// 判断笔试与机试成绩是否都合格
if(writtenScore >= 60 && practiceScore >= 60) {
	System.out.println(" 笔试与机试都合格,获得软件工程师证书! ");
}

4.1.3 双分支if结构

分支结构使用if-else语句实现,用于根据条件判断的结果执行不同的操作。

语法:

if ( 条件 ) { 
        //代码块1  
}else { 
       //代码块2 
}
  • 条件的结果为true,则执行if中的代码块1,条件的结果为false,则执行else中的代码块2

示例:实现:求两个数的最大值

if(num1 >= num2) {
     max = num1;
} else {
     max = num2;
}

示例:实现:游戏菜单界面

int choose = input.nextInt();
if(1==choose) {
	System.out.println(" 正在登录系统 ...");
} 
if(2==choose){
	System.out.println(" 系统已退出! ");
}

4.1.4 实践练习

4.2 多重条件结构

4.2.1 多重条件结构

思考:对学生的结业考试成绩进行评测

  • 成绩>=80 :良好
  • 成绩>=60 :中等
  • 成绩<60   :差

4.2.2 多重if结构

在多重if语句的语法中,条件表达式的值也必须是bolean类型,else if 快可以有多个或没有,else if块的数量完全取决于需要,else块最多只能有一个,且只能放在后面。

语法:

 if ( 成绩>=80) {             //条件1
     //代码块1  
 }
 else if (成绩>=60) {         //条件2
     //代码块2 
 }
 else { 
     //代码块3 
 }

4.2.3 多重if结构的使用

示例:使用多重if实现学生的结业考试成绩评测

if(score >= 90) {  //考试成绩>=90
         System.out.println("优秀");
} else if (score >= 80) {  // 90 >考试成绩>=80
         System.out.println("良好");
} else if (score >= 60) {   // 80>考试成绩>=60
         System.out.println("中等");
} else {                //考试成绩<60
         System.out.println("差");
}

 

多重if中条件表达式的顺序是有序的,要么从大到小,要么从小到大,总之是要有顺序地排列。条件不按顺序排列会出错。

4.2.4 实践练习(一)

4.2.5 实践练习(二)

4.3 嵌套条件结构

4.3.1 嵌套if结构

嵌套条件结构即在一个条件结构中嵌入另一个。

if(条件表达式1){
      if(条件表达式2){            //内层结构
	  语句块1;
      } else {
	  语句块2;
      }
} else {
      if(条件表达式3) {            //内层结构
              语句块3;
      } else {
	  语句块4;
      }
}

外层条件满足后才执行内层条件语句

4.3.2 嵌套if结构的使用

示例:学校举办运动会,要求年龄在18岁以上的男同学,能够参加A类比赛项目,18岁以上的女同学,能够参加B类比赛项目,而18岁以下的男女同学都可以参加C类项目。

if(gender == ' 男 ') {
if(age>=18) {
	System.out.println(" 可以报 A 类比赛项目 ");
} 
else {
	System.out.println(" 可以报 B 类比赛项目 ");
}
} 
else {
	System.out.println(" 可以报 C 类比赛项目 "); 
}

示例:在体育课上,男生与女生的引体向上达标的个数分别为12个和8个,编写程序实现判断引体向上成绩是否达标。

if(gender == '男') {
	if(num>=12) {
		System.out.println("该男生引体向上成绩达标!");
	} else {
		System.out.println("该男生引体向上成绩不达标!");
	}
} else {
	if(num>=8) {
		System.out.println("该女生引体向上成绩达标!");
	} else {
		System.out.println("该女生引体向上成绩不达标!");
	}
}

4.3.3 实践练习

 

4.4 Switch结构

4.4.1 Switch-case结构

语法:

switch (表达式) {
      case 常量 1:
	     语句;
	     break;
      case 常量 2:
	     语句;
	     break;
	…	
      default:
	     语句;
	     break;
}

4.4.2 Switch-case使用

示例:解决名次与奖励的问题

 int no = 2;   //成绩名次
 switch(no) {
	case 1:
	        System.out.println("奖励联想笔记本一台");
	         break;
              case 2:
	         System.out.println("奖励移动硬盘一个");
	         break;
	case 3:
	         System.out.println("奖励U盘一个");
	          break;
	default:
	         System.out.println("没有任何奖励");
	         break;
 }

如果需要每个case执行完后跳出,在每个case后不要忘记写break;

示例:判断1~6中的奇数与偶数

int  num = 3;
switch(num) {
	case 1:
	case 3:
	case 5:
	        System.out.println("奇数!");
	        break;
	case 2:
	case 4:
	case 6:
	       System.out.println("偶数!");	
	       break;
}

case后面的常量必须各不相同

4.4.3 选择结构小结

选择结构包含:

  • 单分支结构
  • 双分支结构
  • 嵌套分支结构
  • 多分支结构

在这种等值的判断结构中,结构更加清晰,模块化更强,但在进行范围判断时,switch不如多重if方便。

4.4.4 实践练习

总结:

  • 程序结构分为顺序结构、选择结构、循环结构。
  • 选择结构中的条件表达式的结果必须是boolean类型。
  • 双分支if-else结构中,程序要么选择if块中的语句,要么选择else块中的语句,只能选择其一来执行。
  • 多分支结构有多重if语句结构和switch结构。
  • 使用switch语句实现等值判断的多分支语句,其语句结构方便简洁。
  • 在实际开发中,遇到分支情况时,通常会综合运用if选择结构的各种形式与switch结构解决问题。
发布了30 篇原创文章 · 获赞 5 · 访问量 841

猜你喜欢

转载自blog.csdn.net/weixin_44893902/article/details/104373891
今日推荐