一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第11天,点击查看活动详情。
循环的嵌套
一个循环体内又包含另外一个完整的循环结构,称为循环的嵌套。 3种循环(while循环, do...while循环和for循环)可以互相嵌套,如:
(1) while
while() {
...
while() { // 内层循环
...
}
}
(2)do...while
do {
...
do { // 内层循环
...
} while()
} while()
(3)for
for(;;) {
for(;;) { // 内层循环
...
}
}
(4) while, do...while
while(){
...
do{ // 内层循环
...
} while()
}
(5) for, while // ※
for(;;) {
...
while () { // 内层循环
...
}
}
(6) do...while, for
do {
...
for (;;) { // 内层循环
...
}
} while()
复制代码
几种循环的比较
- 3种循环都可以用来处理同一问题,一般情况下可互相代替
- 在while和do...while循环中,只在while后面的括号内指定循环条件,因此为了循环能正常结束,应在循环体内包含使循环趋于结束的语句(如i++, i = i + 1等)。for循环可以在表达式3中包含使循环趋于结束的操作
- 用while和do...while循环时,循环遍历初始化的操作应在循环语句之前完成。而for语句还可以在表达式1中完成变量的初始化
while, do...while和for循环都可以用break语句跳出循环,用continue语句结束本次循环。
改变循环执行的状态
- 用break语句提前终止循环
break语句的一般形式:
break;
复制代码
作用是:使流程跳到循环体之外,接着执行循环体下面的语句
break语句只能用于循环语句和switch语句中,不能单独使用
- 用continue语句提前结束本次循环
一般形式为:
continue;
复制代码
作用:提前结束本次循环,而接着执行下次循环
- break语句和continue语句的区别 ※
- continue语句只结束本次循环,而不是终止整个循环的执行。
- break语句是结束整个循环过程,不再判断执行循环的条件是否成立
循环程序举例
-
输入两个正整数m和n,求其最大公约数和最小公倍数
-
输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是水仙花数,因为153 = 1³ + 5³ + 3³.
-
用二分法求下面方程在(-10, 10)的根: 2x³ - 4x² + 3x - 6 = 0