A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


break语句的作用是:结束当前正在执行的循环(for、while、do…while)或多路分支(switch)程序结构,转而执行这些结构后面的语句。

在switch语句中,break用来使流程跳出switch语句,继续执行switch后的语句。

在循环语句中,break用来从最近的封闭循环体内跳出。

例如,下面的代码在执行了break之后,继续执行“a+=1;”处的语句,而不是跳出所有的循环:

for ( ; ; )

{ …

for ( ; ; )

{



if (i==1)

break;



}

a+=1; //break跳至此处

//…

}

continue语句的作用是:结束当前正在执行的这一次循环(for、while、do…while),接着执行下一次循环。即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

在for循环中,continue用来转去执行表达式2。

在while循环和do…while循环中,continue用来转去执行对条件表达式的判断。

continue语句和break语句的区别是:continue语句只结束本次循环,而不是终止整个循环的执行。而break语句则是结束本次循环,不再进行条件判断。

例如: 输出1~100之间的不能被7整除的数。

for (int i=1; i<=100; i++)

{

if (i%7==0)

continue;

cout << i << endl;

}

当i被7整除时,执行continue语句,结束本次循环,即跳过cout语句,转去判断i<=100是否成立。只有i不能被7整除时,才执行cout函数,输出i。
C++ 中 break 语句有以下两种用法:

当 break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条智汇返佣https://www.kaifx.cn/broker/thinkmarkets.html语句。
它可用于终止 switch 语句中的一个 case。
如果您使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。

语法
C++ 中 break 语句的语法:

break;


流程图
C++ break 语句

实例
实例
#include <iostream>
using namespace std;

int main ()
{
   // 局部变量声明
   int a = 10;

   // do 循环执行
   do
   {
       cout << "a 的值:" << a << endl;
       a = a + 1;
       if( a > 15)
       {
          // 终止循环
          break;
       }
   }while( a < 20 );

   return 0;
}
当上面的代码被编译和执行时,它会产生下列结果:

a 的值: 10
a 的值: 11
a 的值: 12
a 的值: 13
a 的值: 14
a 的值: 15
用于 switch 中的 break 语句也可以放在循环中,当遇到 break 时,循环立即停止,程序跳转到循环后面的语句。

以下是一个带有 break 语句的循环示例。程序段中的 while 循环看起来要执行 10 次,但 break 语句导致它在第 5 次迭代后即停止:
int count = 1;
while (count <= 10)
{
    cout << count << endl;
    count++;
    if (count == 6)
        break;
}
这个例子只是为了说明在循环中的 break 语句的作用。通常不会有人以这种方式来使用它,因为它违反了结构化编程的规则,并使代码难以理解、调试和维护。

一个循环的退出应该通过循环顶部的条件测试来控制,就像在 while 循环或 for 循环中那样,或者在底部,就像在 do-while 循环中那样。通常在循环中使用 break 语句的唯一时间是在发生错误的情况下提前退出循环。下面的程序提供了这样一个示例:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
    double number;
    cout << "Enter 5 positive numbers separated by spaces and \n" << "I will find their square roots: ";
    for (int count = 1; count <= 5; count++)
    {
        cin >> number;
        if (number >= 0.0)
        {
            cout << "\nThe square root of " << number << " is " << sqrt(number) <<endl;
        }
        else
        {
            cout << number << " is negative. " << "I cannot find the square root of a negative number. The program is terminating.\n";
            break;
        }
    }
    return 0;
}
程序输出结果:
Enter 5 positive numbers separated by spaces and I will find their square roots: 12 15 -17 19 31
The square root of 12 is 3.4641
The square root of 15 is 3.87298
-17 is negative. I cannot find the square root of a negative number. The program is terminating.

在嵌套循环中使用 break
在嵌套循环中,break 语句只会中断其所在位置的循环。以下程序段在屏幕上显示 5 行星号。外部循环控制行数,内部循环控制每行中的星号数。内部循环设计为显示 20 个星号,但是 break 语句使循环在第 11 次迭代中停止。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马