- 3. 流程控制语句
- 3.1 流程控制语句分类
- 3.2 顺序结构
- 3.3 分支结构之if语句
- 3.3.1 if语句格式1
- 3.3.2 if语句格式2
- 3.3.3 if语句格式3
- 3.4. switch语句
- 3.4.1 分支语句switch语句
- 3.4.2 switch语句case穿透
- 3.5. 循环语句
- 3.5.1 循环语句-for循环
- 3.5.2 循环语句-while循环
- 3.5.3 循环语句-dowhile循环
- 3.5.4 三种循环的区别
3.5.5 跳转控制语句
3. 流程控制语句
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。所以,我们必须清楚每条语句的执
行流程。而且,很多时候要通过控制语句的执行顺序来实现我们想要的功能。
3.1 流程控制语句分类
顺序结构
分支结构 (if, switch)
循环结构 (for, while, do…while)
3.2 顺序结构
顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多
数的代码都是这样执行的。
顺序结构执行流程图:
3.3 分支结构之if语句
3.3.1 if语句格式1
执行流程:
①首先计算关系表达式的值
②如果关系表达式的值为 true 就执行语句体
③如果关系表达式的值为 false 就不执行语句体
④继续执行后面的语句
示例:
3.3.2 if语句格式23.3.2 if语句格式2执行流程:
①首先计算关系表达式的值
②如果关系表达式的值为 true 就执行语句体 1
③如果关系表达式的值为 false 就执行语句体 2
④继续执行后面的语句内容
示例:奇偶数
任意给出一个整数,请用程序实现判断该整数是奇数还是偶数,并在控制台输出该整数是奇数还是偶数。
3.3.3 if语句格式3
执行流程:
①首先计算关系表达式 1 的值
②如果值为 true 就执行语句体 1 ;如果值为 false 就计算关系表达式 2 的值
③如果值为 true 就执行语句体 2 ;如果值为 false 就计算关系表达式 3 的值
④ …
⑤如果没有任何关系表达式为 true ,就执行语句体 n+1 。
示例:
定义一个在 0~100 之间的变量 a, 90~100 优秀, 80~89 良好, 70~79 中等, 60~69 及格, 0~59请努力加油!
3.4. switch语句
3.4.1 分支语句switch语句执行流程:
首先计算出表达式的值
其次,和 case 依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到 break 就会结
束。
最后,如果所有的 case 都和表达式的值不匹配,就会执行 default 语句体部分,然后程序结束掉。
3.4.2 switch语句case穿透
概述 : 如果 switch 语句中 ,case 省略了 break 语句 , 就会开始 case 穿透
需求 : 键盘录入星期数,输出工作日、休息日 (1-5) 工作日, (6-7) 休息日
示例代码:
3.5. 循环语句
3.5.1 循环语句-for循环
循环:
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,
当反复 执行这个循环体时,需要在合适的时候把循环判断条件修改为 false ,从而结束循环,否则循环将一直
执行下去,形 成死循环。
格式解释:
初始化语句: 用于表示循环开启时的起始状态,简单说就是循环开始的时候什么样
条件判断语句:用于表示循环反复执行的条件,简单说就是判断循环是否能一直执行下去
循环体语句: 用于表示循环反复执行的内容,简单说就是循环反复执行的事情
条件控制语句:用于表示循环执行中每次变化的内容,简单说就是控制循环是否能执行下去
执行流程:
①执行初始化语句
②执行条件判断语句,看其结果是 true 还是 false
如果是 false ,循环结束
如果是 true ,继续执行
③执行循环体语句
④执行条件控制语句
⑤回到②继续
3.5.2 循环语句-while循环
while循环完整格式
while循环执行流程:
①执行初始化语句
②执行条件判断语句,看其结果是 true 还是 false
如果是 false ,循环结束
如果是 true ,继续执行
③执行循环体语句
④执行条件控制语句
⑤回到②继续
示例代码:
3.5.3 循环语句-dowhile循环
示例代码:
public class DoWhileDemo {
public static void main ( String [] args ) {
// 需求:在控制台输出 5 次 "HelloWorld"
//for 循环实现
for ( int i = 1 ; i <= 5 ; i ++ ) {
System . out . println ( "HelloWorld" );
}
System . out . println ( "--------" );
//do...while 循环实现
int j = 1 ;
do {
System . out . println ( "HelloWorld" );
j ++ ;
} while ( j <= 5 );
}
}
3.5.4 三种循环的区别
三种循环的区别
for 循环和 while 循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)
do...while 循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)
for循环和while的区别
条件控制语句所控制的自增变量,因为归属 for 循环的语法结构中,在 for 循环结束后,就不能再次被访 问到了
条件控制语句所控制的自增变量,对于 while 循环来说不归属其语法结构中,在 while 循环结束后,该变 量还可以继续使用
3.5.5 跳转控制语句
跳转控制语句(break)
跳出循环,结束循环
跳转控制语句(continue)
跳过本次循环,继续下次循环