C 中断并继续
C 中断并继续
我们在之前的教程中了解了循环。在本教程中,我们将通过示例学习使用 break 和 continue 语句。
C 中断
break 语句在遇到时立即结束循环。它的语法是:
break;
break 语句几乎总是与 if...else
一起使用 循环内的语句。
break 语句是如何工作的?
<图>示例1:break语句
// Program to calculate the sum of numbers (10 numbers max)
// If the user enters a negative number, the loop terminates
#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;
for (i = 1; i <= 10; ++i) {
printf("Enter n%d: ", i);
scanf("%lf", &number);
// if the user enters a negative number, break the loop
if (number < 0.0) {
break;
}
sum += number; // sum = sum + number;
}
printf("Sum = %.2lf", sum);
return 0;
}
输出
Enter n1: 2.4 Enter n2: 4.5 Enter n3: 3.4 Enter n4: -3 Sum = 10.30
该程序计算最多 10 个数字的总和。为什么最多10个数字?这是因为如果用户输入一个负数,break
语句被执行。这将结束 for
循环和 sum 显示出来。
在 C 中,break
也与 switch
一起使用 陈述。这将在下一个教程中讨论。
C 继续
continue
语句跳过循环的当前迭代并继续下一次迭代。它的语法是:
continue;
continue
语句几乎总是与 if...else
一起使用 声明。
continue 语句如何工作?
<图>示例2:continue语句
// Program to calculate the sum of numbers (10 numbers max)
// If the user enters a negative number, it's not added to the result
#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;
for (i = 1; i <= 10; ++i) {
printf("Enter a n%d: ", i);
scanf("%lf", &number);
if (number < 0.0) {
continue;
}
sum += number; // sum = sum + number;
}
printf("Sum = %.2lf", sum);
return 0;
}
输出
Enter n1: 1.1 Enter n2: 2.2 Enter n3: 5.5 Enter n4: 4.4 Enter n5: -3.4 Enter n6: -45.5 Enter n7: 34.5 Enter n8: -4.2 Enter n9: -1000 Enter n10: 12 Sum = 59.70
在这个程序中,当用户输入一个正数时,使用 sum += number;
计算总和 声明。
当用户输入负数时,continue
语句被执行,它从计算中跳过负数。
C语言