必須知道的C語言知識細節(jié):break、continue語句區(qū)別

break語句、continue語句都是C語言標準規(guī)定的跳轉類語句,能夠實現程序無條件轉向另一處執(zhí)行。

break和continue中在循環(huán)體中經常出現,因此必須掌握其區(qū)別,避免出錯。

先復習下兩種語句的用法:

break語句可以在開關體(switch語句)或循環(huán)體內(while,do...while,for)出現,總結起來用以下四種情況,實現跳出當前switch語句或循環(huán)體語句,跳轉到開關體或循環(huán)體外執(zhí)行下一條語句功能。

while(....)
{
    ...
    break;
    ...
}
do{
    ...
    break;
    ...
}while(...);

for(...){
    ...
    break;
    ...
}
switch(...){
    case ...
        break;
    ....
}

continue語句只能在循環(huán)體內(while,do...while,for)出現,有以下三種情況,實現結束循環(huán)體內當前的一次循環(huán)執(zhí)行過程,跳轉到循環(huán)體開頭重新執(zhí)行下一次循環(huán)過程。

while(....)
{
    ...
    continue;
    ...
}
do{
    ...
    continue;
    ...
}while(...);
for(...){
    ...
    continue;
    ...
}

仔細理解上述用法,發(fā)現區(qū)別挺大。

1.break可以用在開關體switch語句中,continue語句不行;

2.兩者用在循環(huán)語句中時,break是用來結束整個循環(huán)過程,continue僅僅是結束本次循環(huán)執(zhí)行,繼續(xù)執(zhí)行下一次循環(huán)。

例如一個循環(huán)本來要執(zhí)行100次,當執(zhí)行10次時,因為循環(huán)條件不符合出現break語句時,將提前結束執(zhí)行循環(huán),剩下的99次不會再執(zhí)行;

如果是continue語句,只會當前第10次循環(huán)后面代碼不再執(zhí)行,跳到循環(huán)開頭,繼續(xù)執(zhí)行后面剩余的90次循環(huán)。

示例代碼1:

#include <stdio.h>
int main(void) 
{
  int i;
  int count = 0;
  for(i=1; i<=100; i++)
  {
    if(i==10)
      break;
    count++;  
  }  
  printf("循環(huán)完成執(zhí)行%d次.\n", count);
  return 0;
} 

輸出結果:

循環(huán)完成執(zhí)行9次.

示例代碼2:

#include <stdio.h>
int main(void) 
{
  int i;
  int count = 0;
  for(i=1; i<=100; i++)
  {
    if(i==10)
      continue; 
    count++;  
  }  
  printf("循環(huán)完成執(zhí)行%d次.\n", count);
  return 0;
} 

輸出結果:

循環(huán)完成執(zhí)行99次.

其實做為一個學習者,有一個學習的氛圍跟一個交流圈子特別重要這里我推薦一個C/C++基礎交流583650410,不管你是小白還是轉行人士歡迎入駐,大家一起交流成長。



?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容