C++ continue语句怎么用?跳出当前循环迭代该咋写?

文章导读
Previous Quiz Next continue 语句 continue 语句的工作方式与 break 语句有些相似。然而,它不是强制终止循环,而是强制执行循环的下一个迭代,跳过中间的任何代码。
📋 目录
  1. continue 语句
  2. 语法
  3. 流程图
  4. 示例
  5. 解释
  6. continue 与 break 语句的比较
  7. continue 语句的使用场景
A A

C++ continue 语句



Previous
Quiz
Next

continue 语句

continue 语句的工作方式与 break 语句有些相似。然而,它不是强制终止循环,而是强制执行循环的下一个迭代,跳过中间的任何代码。

对于 for 循环,continue 会导致循环的条件测试和递增部分执行。对于 whiledo...while 循环,程序控制会传递到条件测试部分。

语法

C++ 中 continue 语句的语法如下 −

continue;

流程图

以下是展示 C++ 中 continue 语句的流程图:

C++ continue statement

示例

以下是 C++ 中 continue 语句的示例:

#include <iostream>
using namespace std;
 
int main () {
   // 局部变量声明:
   int a = 10;

   // do 循环执行
   do {
      if( a == 15) {
         // 跳过本次迭代。
         a = a + 1;
         continue;
      }
      cout << "value of a: " << a << endl;
      a = a + 1;
   } 
   while( a < 20 );
 
   return 0;
}

输出

当上述代码编译并执行时,会产生以下结果 −

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 16
value of a: 17
value of a: 18
value of a: 19

解释

  1. 首先,do-while 循环将确保 do 部分内的代码块至少执行一次,然后检查条件 a < 20,并在满足条件时继续循环。
  2. if 语句中,如果 a == 15,则 a = a + 1 将值递增 1,并且 continue 语句将跳过 15;因此,15 不会被打印。

continue 与 break 语句的比较

continue 语句跳过当前迭代的剩余部分,并移动到循环的下一个迭代。这主要用于用户希望基于条件跳过特定迭代的情况。它不会终止循环,只是将执行转移到下一个迭代。 而 break 语句基于给定的特定条件完全终止循环,并停止循环的进一步执行。

continue 语句的使用场景

  • 过滤数据: 当过滤数据集中的无效或不需要的数据时,continue 语句非常有用。
  • 跳过不必要的计算和无效用户输入: 通过使用 continue 语句,可以避免某些情况下结果已预定的冗余计算。
  • 性能优化: 通过避免不必要的处理来优化整体性能。
  • 适用于复杂循环结构: 复杂的循环结构需要选择性地执行迭代,使用 continue 语句对此类情况有益。