📅  最后修改于: 2023-12-03 14:40:26.625000             🧑  作者: Mango
在编写C程序时,我们经常需要实现某个特定条件下的循环或者迭代。有时候,我们需要在达到一定次数后停止循环,而有时候我们希望在满足特定条件时终止循环。这篇介绍将讨论如何停止C程序的循环或迭代。
break
语句break
语句可以用于立即终止当前循环,并且跳出所在的循环语句块。例如,在使用 for
或 while
循环时,我们可以在满足某个条件时使用 break
语句退出循环。
示例代码如下:
#include <stdio.h>
int main() {
int count = 0;
while (1) {
count++;
if (count == 5) {
break; // 当 count 等于 5 时,终止循环
}
printf("Count: %d\n", count);
}
return 0;
}
上述代码会输出以下结果:
Count: 1
Count: 2
Count: 3
Count: 4
当 count
的值为 5 时,break
语句会被执行,并且循环会立即终止。
return
语句在函数中,我们可以使用 return
语句来终止函数的执行。如果我们在循环的某个点检查到满足停止的条件,可以使用 return
语句终止函数并返回。
示例代码如下:
#include <stdio.h>
int sum_up_to_n(int n) {
int sum = 0;
int count = 0;
while (1) {
count++;
sum += count;
if (count == n) {
return sum; // 当 count 等于 n 时,终止函数,并返回 sum 的值
}
}
}
int main() {
int result = sum_up_to_n(5);
printf("Result: %d\n", result);
return 0;
}
上述代码会输出以下结果:
Result: 15
在函数 sum_up_to_n
中,当 count
的值等于输入的 n
时,函数会使用 return
语句终止,并返回当前的 sum
值。
我们可以使用一个标志变量来控制循环的终止条件。标志变量通常是一个布尔类型的变量,在满足特定条件时被设置为 true
,从而使循环停止。
示例代码如下:
#include <stdio.h>
#include <stdbool.h>
int main() {
bool stop = false;
int count = 0;
while (!stop) {
count++;
if (count == 5) {
stop = true; // 当 count 等于 5 时,设置 stop 为 true,终止循环
}
printf("Count: %d\n", count);
}
return 0;
}
上述代码会输出以下结果:
Count: 1
Count: 2
Count: 3
Count: 4
当 stop
的值为 true
时,循环会终止。
以上是在C程序中停止循环或迭代的三种常用方法。根据实际需求,我们可以选择适合的方法使程序达到预期的结果。