break和continue语句

break和continue语句改变控制流程。break语句在while、for、do/while或switch结构中执行时,使得程序立即退出这些结构,从而执行该结构后面的第一条语句。break语句常用于提前从循环退出或跳过switch结构的其余部分(如图2.22)。图2.26演示了for重复结构中的break语句,if结构发现x变为5时执行break,从而终止for语句,程序继续执行for结构后面的cout语句。循环只执行四次。

注意这个程序中控制变量x在for结构首部之外定义。这是因为我们要在循环体中和循环执行完毕之后使用这个控制变量。

continue语句在while、for或do/while结构中执行时跳过该结构体的其余语句,进入下一轮循环。在while和do/while结构中,循环条件测试在执行continue语句之后立即求值。在for结构中,执行递增表达式,然后进行循环条件测试。前面曾介绍过.while结构可以在大多数情况下取代for结构。但如果while结构中的递增表达式在continue语句之后,则会出现例外。这时,在测试循环条件之前没有执行递增,并且while与for的执行方式是不同的。图2.27在for结构中用continue语句跳过该结构的输出语句,进入下一轮循环。

 // Fig.2.26:fig02 26.cpp
 // Usinq the break statement in a for structure
 #include< ostream.h>
 int main()
 {
 // x declared here so it can be used after the loop
 int x;
 for ( x = 1; x <= 10; x++ ) {
 if { x == 5 )
 break; // break loop only if x is 5
 cout << x <<" ";
 }
 cout << " Broke out of loop at x of" << x << endl;
 return O;
 }

输出结果:

l 2 3 4

Broke out of loop at x of 5

图2.26 for重复结构中的break语句

  // Fig. 2.27: figO2_OT.cpp
  // Using the continue statement in a for structure
 #include < iostream.h>
 int main()
 {
    for ( iht x = 1; x <- 10; x++ } {
       if {x==5)
         continue;  // skip remaining code in loop
                  // only if x is 5
      cout << x <<" ";
  }
      cout << "
Used continue to skip printing the value 5"
             << endl;
      return O;
 }

l 2 3 4 5 6 7 9 9 10

USed continue to skip printing the value 5

图 2.27 在for结构用continue语句

编程技巧2.30

有些程序员认为break和continue会破坏结构化编程。由于这些语句可以通过后面要介绍的结构化编程方法实现,因此这些程序员不用break和continue。

性能提示 2.9

正确使用break和continue语句能比后面要介绍的通过结构化编程方法的实现速度更快。

软件工程视点2.10

达到高质量软件工程与实现最佳性能软件之间有一定冲突。通常,要达到一个目标,就要牺牲另一个目标。

2016考研复试技巧http://www.kyjxy.com/fushi/zhinan/
考研专硕备考资料http://www.kyjxy.com/zhuanshuo/
考研院校政策http://www.kyjxy.com/yuanxiao/zhengce/

原文地址:https://www.cnblogs.com/along-may/p/4548921.html