目录
do while()
在C语言中,`do...while`循环是一种循环结构,它与`while`循环类似,但有一个关键的区别:`do...while`循环保证循环体至少执行一次,然后根据条件测试是否继续执行。`do...while`循环的一般语法如下:
do {
// 循环体
} while (条件);
- `循环体`是在每次循环迭代时执行的一段代码,它包含要重复执行的操作。
- `条件`是一个布尔表达式,它用于测试循环是否继续执行。与`while`循环不同,`do...while`循环会首先执行循环体,然后检查条件。只要条件为真(非零),循环就会继续执行;一旦条件为假(零),循环将退出。
以下是一个示例,演示了`do...while`循环的使用:
#include <stdio.h>
int main() {
int count = 1;
do {
printf("这是第 %d 次循环。\n", count);
count++;
} while (count <= 5);
return 0;
}
在上面的示例中,`do...while`循环首先执行循环体,然后检查条件`count <= 5`。即使条件一开始就为假,循环体仍会被执行一次。然后,在每次迭代中,`count`递增一次,直到`count`的值不再小于或等于5,此时循环终止。
`do...while`循环适用于需要至少执行一次循环体的情况,然后根据条件继续执行的场景。与`while`循环相比,它更适合某些特定的问题。请确保在使用`do...while`循环时正确设置条件,以避免无限循环。
continue()
在C语言中,`continue`是一个控制语句,用于在循环内部跳过当前迭代并继续下一次迭代。当`continue`语句被执行时,它会导致程序跳过当前迭代的剩余代码,并直接进入下一次循环迭代。`continue`通常用于循环内部的条件判断,以实现跳过特定条件的情况。
`continue`语句的使用方式如下:
for (int i = 1; i <= 5; i++) {
if (condition) {
// 在满足条件时,执行 continue,跳过当前迭代
continue;
}
// 这里的代码在不满足条件时执行
}
或者在`while`循环和`do...while`循环中使用:
while (condition) {
// 一些代码
if (some_condition) {
// 在满足条件时,执行 continue,跳过当前迭代
continue;
}
// 更多代码
}
do {
// 一些代码
if (some_condition) {
// 在满足条件时,执行 continue,跳过当前迭代
continue;
}
// 更多代码
} while (condition);
下面是一个示例,演示了`continue`的使用:
#include <stdio.h>
int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
printf("跳过第 3 次迭代。\n");
continue; // 跳过当前迭代
}
printf("这是第 %d 次迭代。\n", i);
}
return 0;
}
在这个示例中,当`i`的值等于3时,`continue`语句被执行,跳过了第3次迭代的剩余代码,然后程序继续执行下一次迭代。
`continue`语句通常与条件语句一起使用,以实现在特定条件下跳过某些迭代。
break
在C语言中,`break`是一种控制语句,用于在循环内部或`switch`语句中提前结束循环或`switch`分支的执行,即跳出当前循环或分支,并继续执行循环或分支之后的代码。`break`通常用于满足某个条件时强制退出循环或分支,而不管循环条件是否满足。
以下是`break`语句的使用方式:
在`for`循环、`while`循环和`do...while`循环中使用`break`:
for (int i = 1; i <= 10; i++) {
if (i == 5) {
// 在满足条件时,执行 break,提前结束循环
break;
}
printf("当前的 i 值:%d\n", i);
}
或者:
while (condition) {
// 一些代码
if (some_condition) {
// 在满足条件时,执行 break,提前结束循环
break;
}
// 更多代码
}
在`switch`语句中使用`break`:
switch (expression) {
case 1:
// 情况1的代码
break;
case 2:
// 情况2的代码
break;
default:
// 默认情况的代码
}
下面是一个示例,演示了`break`的使用:
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
if (i == 5) {
printf("发现 i 等于 5,提前结束循环。\n");
break; // 提前结束循环
}
printf("当前的 i 值:%d\n", i);
}
return 0;
}
在这个示例中,当`i`的值等于5时,`break`语句被执行,导致循环提前结束。
`break`语句通常用于在满足某个条件时立即退出循环,以节省不必要的迭代。在`switch`语句中,`break`用于结束一个分支的执行并跳出`switch`块,以避免执行其他分支。请注意,`break`只会退出最内层的循环或`switch`分支。如果嵌套了多个循环或`switch`语句,`break`只会退出当前的循环或分支。