C 语言 break 和 continue

C break

break 语句在遇到循环时立即终止循环。其语法为

break;

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


break 语句如何工作?

Working of break statement
break 在 C 语言中的工作原理

示例 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;

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


continue 语句如何工作?

Working of continue statement in C programming
Continue 在 C 语言中的工作原理

示例 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 break 和 continue 的掌握程度!您能解决以下挑战吗?

挑战

编写一个函数来检查给定数字是否为素数。

  • 素数是只有两个不同正因子(**1** 和它本身)的自然数。
  • 例如,**7** 是素数,因为它只有两个不同正因子:**1** 和 **7**。
  • 如果 num 是素数,则返回 **1**,否则返回 **0**。
  • 例如,如果 num = 5,则预期输出为 **1**。

视频:C break 和 continue

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战