文章目录
1. 什么是 break 和 continue?
break
和 continue
是 C 语言中用于控制循环执行流程的关键字:
break
:用于立即退出当前循环。continue
:用于跳过当前循环的剩余代码,直接进入下一次循环。
2. break 的使用
2.1 在循环中使用 break
break
通常用于在满足某个条件时提前退出循环。例如:
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // 当 i 等于 5 时退出循环
}
printf("%d ", i);
}
输出结果:
1 2 3 4
2.2 在 switch 语句中使用 break
break
也用于 switch
语句中,防止代码“贯穿”到下一个 case
。例如:
int day = 3;
switch (day) {
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
default:
printf("无效的日期\n");
}
3. continue 的使用
continue
用于跳过当前循环的剩余代码,直接进入下一次循环。例如:
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 跳过偶数
}
printf("%d ", i);
}
输出结果:
1 3 5 7 9
4. break 和 continue 的区别
特性 | break | continue |
---|---|---|
作用 | 立即退出当前循环 | 跳过当前循环的剩余代码,进入下一次循环 |
适用场景 | 循环和 switch 语句 | 仅用于循环 |
示例 | for (int i = 1; i <= 10; i++) { if (i == 5) break; } | for (int i = 1; i <= 10; i++) { if (i % 2 == 0) continue; } |
5. 示例代码
以下是一个使用 break
和 continue
的示例程序:
#include <stdio.h>
int main() {
// 使用 break 退出循环
printf("使用 break 退出循环:\n");
for (int i = 1; i <= 10; i++) {
if (i == 5) {
break; // 当 i 等于 5 时退出循环
}
printf("%d ", i);
}
printf("\n");
// 使用 continue 跳过偶数
printf("使用 continue 跳过偶数:\n");
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 跳过偶数
}
printf("%d ", i);
}
printf("\n");
return 0;
}
代码解析:
-
使用 break 退出循环:
- 当
i
等于 5 时,使用break
退出循环。
- 当
-
使用 continue 跳过偶数:
- 当
i
为偶数时,使用continue
跳过当前循环的剩余代码。
- 当
输出结果:
使用 break 退出循环:
1 2 3 4
使用 continue 跳过偶数:
1 3 5 7 9
6. 常见问题
问题 1:break
可以用于嵌套循环吗?
- 可以。
break
只会退出当前所在的循环,不会影响外层循环。
问题 2:continue
可以用于嵌套循环吗?
- 可以。
continue
只会跳过当前循环的剩余代码,不会影响外层循环。
问题 3:break
和 continue
可以用于 while
和 do-while
循环吗?
- 可以。
break
和continue
适用于所有循环结构(for
、while
、do-while
)。
7. 扩展练习
- 修改程序,使用
break
在找到第一个满足条件的数时退出循环。 - 编写一个程序,使用
continue
跳过所有能被 3 整除的数。 - 尝试在嵌套循环中使用
break
和continue
,观察其行为。