C 語言中的 break 和 continue
循環語句很好用,但是如果循環進行到一般想要跳出循環或者結束循環怎么辦?那么那你需要 break 和 continue 語句。
1. break 和 continue 的使用語法
1.1 or 循環中使用 break 和 continue
break
for (控制循環的變量; 循環判斷條件; 循環變量增減變化)
{
語句1;
if (判斷條件)
break;
語句2;
}
continue
for (控制循環的變量; 循環判斷條件; 循環變量增減變化)
{
語句1;
if (判斷條件)
continue;
語句2;
}
1.2 while 循環中使用 break 和 continue
break
while (循環判斷條件)
{
語句1;
if (判斷條件 )
break;
語句2;
}
continue
while (循環判斷條件)
{
語句1;
if (判斷條件 )
continue;
語句2;
}
1.3 do while 循環使用 break 和 continue
break
do
{
語句1;
if (判斷條件)
break;
語句2;
}while (循環判斷條件);
continue
do
{
語句1;
if (判斷條件)
continue;
語句2;
}while (循環判斷條件);
2. break 和 continue 的執行過程
2.1 break
2.2 continue
3. break 和 continue 的使用場景
當需要在循環內部滿足一定條件時終止執行該語句后面的本次循環以及剩余的循環時使用 break。這就如同你正在寫作業,突然覺得你不想寫了,那么你就會放棄后面所有作業,而不是循環的在完成寫作業這個動作。
當需要在循環內部滿足一定條件后跳過本語句后面的循環語句中的內容,直接進入下一輪循環的時候使用 continue。這也可以用你寫作業來比喻,當你遇到一道難題以后,你會跳過這道題,然后繼續你的寫作業的動作,一直往復的完成寫作業這個行為。
4. 實例
4.1 break
#include <stdio.h>
int main()
{
for (int i = 0; i < 10; i++)
{
printf("第 %d 次循環,語句1\n", i);
if (i == 5)
{
break;
}
printf("第 %d 次循環,語句2\n", i);
}
return 0;
}
運行結果:
第 0 次循環,語句1
第 0 次循環,語句2
第 1 次循環,語句1
第 1 次循環,語句2
第 2 次循環,語句1
第 2 次循環,語句2
第 3 次循環,語句1
第 3 次循環,語句2
第 4 次循環,語句1
第 4 次循環,語句2
第 5 次循環,語句1
當循環到變量 i 等于 5 的時候,就會滿足 if 語句中的判斷條件,會執行語句 break ,這個時候后面的 printf 語句以及剩下的循環都會被跳過。
4.2 continue
#include <stdio.h>
int main()
{
for (int i = 0; i < 10; i++)
{
printf("第 %d 次循環,語句1\n", i);
if (i == 5)
{
continue;
}
printf("第 %d 次循環,語句2\n", i);
}
return 0;
}
運行結果:
第 0 次循環,語句1
第 0 次循環,語句2
第 1 次循環,語句1
第 1 次循環,語句2
第 2 次循環,語句1
第 2 次循環,語句2
第 3 次循環,語句1
第 3 次循環,語句2
第 4 次循環,語句1
第 4 次循環,語句2
第 5 次循環,語句1
第 6 次循環,語句1
第 6 次循環,語句2
第 7 次循環,語句1
第 7 次循環,語句2
第 8 次循環,語句1
第 8 次循環,語句2
第 9 次循環,語句1
第 9 次循環,語句2
當循環中變量 i 等于 5 的時候會使得其中的 if 語句滿足條件,會執行 continue 語句。這個時候僅僅會跳過本次循環中的 continue 語句后面的內容。然后循環會繼續。
5. 小結
循環語句可以使得循環體中的語句不斷的被重復執行。但是,有些時候,我們可能會因為某些條件的改變而終止循環或者跳過本次循環中的剩余部分。這個時候就不能依靠循環判斷條件了。就要使用 break 和 continue 語句來完成相關的操作。
這兩者都會跳過本次循環中該語句后面的內容。但是兩者的區別在于,使用 break 語句,會讓循環終止,而 continue 語句則只是讓本次循環終止,會馬上進入這個循環體中的下一次循環。