第 5 章 程序控制结构

9/5/2022 韩顺平java笔记

# 5.1 程序流程控制介绍

在这里插入图片描述

# 5.2 顺序控制

在这里插入图片描述

# 5.3 分支控制 if-else

# 5.3.1 分支控制 if-else 介绍

在这里插入图片描述

# 5.3.2单分支

在这里插入图片描述

# 5.4.1 双分支

在这里插入图片描述

# 5.4.4 多分支

多分支的流程图
在这里插入图片描述

案例演示 2
在这里插入图片描述

# 5.6 switch 分支结构

# 5.6.1 基本语法

在这里插入图片描述

# 5.6.2 switch 分支结构流程图

在这里插入图片描述

# 5.6.4 switch 注意事项和细节讨论

在这里插入图片描述

# 5.6.5 switch 课堂练习

  1. 对学生成绩大于 60 分的,输出"合格"。低于 60 分的,输出"不合格"。(注:输入的成绩不能大于 100), 提示 成绩/60

    double score = 1.1; 
    
    if( score >= 0 && score <= 100) { 
    	switch ((int)(score / 60)) { 
    		case 0 : 
    			System.out.println("不合格"); 
    			break; 
    		case 1 : 
    			System.out.println("合格"); 
    			break; 
    	} 
    } else { 
    	System.out.println("输入的成绩在 0-100"); 
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
  2. 根据用于指定月份,打印该月份所属的季节。3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季 [ 课堂练习, 提示 使用穿透 ]

    Scanner myScanner = new Scanner(System.in); 
    System.out.println("输入月份"); 
    int month = myScanner.nextInt(); 
    switch(month) { 
    	case 3: 
    	case 4: 
    	case 5: 
    		System.out.println("这是春季"); 
    		break; 
    	case 6: 
    	case 7:
    	case 8: 
    		System.out.println("这是夏季"); 
    		break; 
    	case 9: 
    	case 10: 
    	case 11: 
    		System.out.println("这是秋季"); 
    		break; 
    	case 1: 
    	case 2: 
    	case 12: 
    		System.out.println("这是冬季"); 
    		break; 
    	default : 
    		System.out.println("你输入的月份不对(1-12)"); 
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27

# 5.6.6 switch 和 if 的比较

在这里插入图片描述

# 5.7 for 循环控制

# 5.7.3 for 循环流程图

在这里插入图片描述

# 5.7.5 for 循环练习题

  1. 打印 1~100 之间所有是 9 的倍数的整数,统计个数及总和.[化繁为简,先死后活]

    public class ForExercise { 
        public static void main(String[] args) { 
            int count = 0; 
            int sum = 0; 
            int start = 10; 
            int end = 200; 
            int t = 5; 
            for(int i = start; i <= end; i++) { 
                if( i % t == 0) { 
                    System.out.println("i=" + i); 
                    count++; 
                    sum += i;
                } 
            }
    
            System.out.println("count=" + count); 
            System.out.println("sum=" + sum); 
        } 
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19

# 5.8 while 循环控制

# 5.8.2 while 循环执行流程分析

  1. 画出流程图
    在这里插入图片描述

# 5.9 do…while 循环控制

# 5.9.3 do…while 循环执行流程图

在这里插入图片描述

# 5.10.4 经典的打印金字塔

在这里插入图片描述

public class Stars { 
	
	public static void main(String[] args) { 
		
		int totalLevel = 20; 
		for(int i = 1; i <= totalLevel; i++) { 
			
			for(int k = 1; k <= totalLevel - i; k++ ) { 
				System.out.print(" "); 
			}
			
			for(int j = 1;j <= 2 * i - 1;j++) { 
				
				if(j == 1 || j == 2 * i - 1 || i == totalLevel) { 
					System.out.print("*"); 
				} else { 
					System.out.print(" "); 
				} 
			}
			
			System.out.println(""); 
		} 
	} 
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

# 5.11 跳转控制语句-break

# 5.11.1 看下面一个需求

在这里插入图片描述
在这里插入图片描述

# 5.11.6 注意事项和细节说明:

在这里插入图片描述

# 5.12 跳转控制语句-continue

# 5.12.1 基本介绍:

在这里插入图片描述

# 5.13 跳转控制语句-return

return 使用在方法,表示跳出所在的方法,在讲解方法的时候,会详细的介绍,这里我们简单的提一下。注意:如果 return 写在 main 方法,则退出程序。