跳到主要内容

C 语言break和continue

提示
  1. break语句的作用break语句用于立即终止循环,通常与if...else语句一起在循环内使用。
  2. continue语句的功能continue语句跳过当前循环的剩余部分,并继续执行下一个迭代,通常与if...else语句结合使用。
  3. breakcontinue的应用:在一个求和程序中,break用于终止循环并计算当前和(如遇到负数),而continue用于忽略特定条件(如负数)并继续循环。

C语言中的break

当遇到break语句时,循环会立即结束。其语法为:

break;

break语句几乎总是与循环内的if...else语句一起使用。

break语句是如何工作的?

break语句的工作原理

示例1:break语句

// 程序计算数值之和(最多10个数字)
// 如果用户输入负数,循环终止

#include <stdio.h>

int main() {
int i;
double number, sum = 0.0;

for (i = 1; i <= 10; ++i) {
printf("输入n%d: ", i);
scanf("%lf", &number);

// 如果用户输入负数,跳出循环
if (number < 0.0) {
break;
}

sum += number; // sum = sum + number;
}

printf("总和 = %.2lf", sum);

return 0;
}

输出

输入n1: 2.4
输入n2: 4.5
输入n3: 3.4
输入n4: -3
总和 = 10.30

该程序计算最多10个数字的和。为什么是最多10个数字?因为如果用户输入一个负数,将执行break语句。这将结束for循环,并显示总和。

在C语言中,break也用于switch语句。这将在下一个教程中讨论。

C语言中的continue

continue语句跳过循环的当前迭代,并继续执行下一次迭代。其语法为:

continue;

continue语句几乎总是与if...else语句一起使用。

continue语句是如何工作的?

C编程中continue语句的工作原理

示例2:continue语句

// 程序计算数值之和(最多10个数字)
// 如果用户输入负数,则不将其加入结果中

#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;

for (i = 1; i <= 10; ++i) {
printf("输入n%d: ", i);
scanf("%lf", &number);

if (number < 0.0) {
continue;
}

sum += number; // sum = sum + number;
}

printf("总和 = %.2lf", sum);

return 0;
}

输出

输入n1: 1.1
输入n2: 2.2
输入n3: 5.5
输入n4: 4.4
输入n5: -3.4
输入n6: -45.5
输入n7: 34.5
输入n8: -4.2
输入n9: -1000
输入n10: 12
总和 = 59.70

在这个程序中,当用户输入一个正数时,使用sum += number;语句计算总和。

当用户输入一个负数时,执行continue语句并跳过计算中的负数。