国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++中break與continue的用法—跳出循環

2020-05-23 14:28:12
字體:
來源:轉載
供稿:網友
不知道大家有沒有注意到,在上一節講述賽車問題的時候有這樣一句話:如果沒有發生意外的話,那么跑完了指定數量的圈數,比賽就結束了。實際上,賽車比賽是會發生各種情況的,比如要進維修站進行維修,或者引擎突然損壞不得不退出比賽。那么C++的“賽車比賽”會不會進維修站或者退出比賽了呢?

上一節向大家介紹了for可以省略循環繼續的條件而使其不斷循環,但如果我們放任這種無止盡的循環,則可能會導致電腦死機。所以我們必須強制停止比賽。這條語句就是break語句,其實我們在4.4的switch語句中已經遇到過了。下面我們還是在程序5.1.1的基礎上作修改,看看break在for語句中是如何使用的。
#include "iostream.h"
int main()
{
   int sum=0;
   for (int i=1;;i++)
   {
      if (i>100) //若i大于100則退出循環
      {
         break;
      }
      sum=sum+i;
   }
   cout <<sum <<endl;
   return 0;
}

C++中break與continue的用法—跳出循環 這段代碼的意思是,當i<=100的時候一直執行循環;一旦i>100了,則會運行到if語句里的break語句,于是強行中止了循環。以上這段代碼可以由圖5.2.1來表示。我們也不難發現,修改后的程序運行結果應該和程序5.1.1的運行結果一樣。

那么,進維修站又是怎么一回事呢?

實際上進維修站并不是退出比賽,而是暫時繞開一段,然后重新進入賽道繼續下一圈的比賽。那么繞開的賽道上的標牌是無法看到的。在C++的“賽車比賽”中,進維修站是繞開一些語句,重新開始下一次的循環。進維修站的語句是continue,下面我們來看一個程序:
(程序5.2.1)
#include "iostream.h"
int main()
{
   for (int i=0;i<12;i++)
   {
      cout <<'*';//輸出星號
      if (i%2==0)
      {
         continue;
      }
      cout <<' ';//輸出空格
   }
   cout <<endl;
   return 0;
}
運行結果: 
** ** ** ** ** **
在循環的執行過程中,如果i%2不等于0,即i為奇數的時候,則完成整個循環,輸出一個星號和一個空格;如果i是個偶數,則跳過輸出空格的語句,進行下一次循環。這個程序的運行情況可以由圖5.2.2來描述。

試試看:
1、改寫程序5.1.1,要求使用continue語句,使其輸出1+3+5……+99的結果。

2、思考break和continue語句是否可能會影響循環的次數?為什么?
結論:break可能影響循環次數,而continue不會影響。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长宁区| 大兴区| 孙吴县| 卫辉市| 金堂县| 辽阳县| 德阳市| 嘉荫县| 且末县| 海盐县| 绥滨县| 巫山县| 攀枝花市| 宝兴县| 宁乡县| 南靖县| 夏津县| 滁州市| 思南县| 育儿| 崇左市| 正定县| 福建省| 东乌| 邓州市| 吉隆县| 如皋市| 牡丹江市| 阳东县| 巧家县| 茌平县| 鸡泽县| 通江县| 大石桥市| 西贡区| 成武县| 邻水| 佛坪县| 奈曼旗| 阿拉善右旗| 黄梅县|