`continue`和`break`都是用于控制循环流程的语句,但它们的作用和使用场景有所不同。
作用不同
`break`:用于立即终止当前循环,跳出循环体,不再判断循环条件是否成立。
`continue`:用于跳过当前循环的剩余部分,直接进入下一次循环的判断或迭代。
使用场景不同
`break`:通常用于当循环中的某些条件被满足时,需要立即退出循环的场景。
`continue`:通常用于当循环中的某些条件被满足时,需要跳过当前循环的剩余部分,而继续下一次循环的场景。
适用范围不同
`break`和`continue`都可以在`for`、`while`等循环结构中使用。
`break`还可以用于`switch`语句中,当满足某个`case`时,可以使用`break`跳出`switch`结构。
`continue`则不能单独用于`switch`语句,除非`switch`在循环体中。
示例代码
使用`break`
```c
for (int i = 1; i <= 5; i++) {
if (i == 3) {
break; // 终止循环
}
printf("i = %d\n", i);
}
```
输出:
```
i = 1
i = 2
```
使用`continue`
```c
for (int i = 1; i <= 5; i++) {
if (i == 3) {
continue; // 跳过本次循环
}
printf("i = %d\n", i);
}
```
输出:
```
i = 1
i = 2
i = 4
i = 5
```
总结
`break`用于完全结束一个循环,跳出循环体执行循环后面的语句。
`continue`用于终止本次循环,接着还执行后面的循环。
根据具体需求选择合适的语句可以更有效地控制程序的执行流程。