關於break和continue的那些事

區別

break 語句,它不僅可以跳出“循環體”,還可以跳出 switch。
break 也只能用於這兩種情況。break 語句不能用於循環語句和 switch 語句之外的任何其他語句中。
不管是 for 循環,還是 while 循環,或者是 do…while 循環,都可以用 break 跳出來,但是 break 只能跳出一層循環。當有多層循環嵌套的時候,break只能跳出“包裹”它的最裏面的那一層循環,無法一次跳出所有循環。

同樣,在多層 switch 嵌套的程序中,break 也只能跳出其所在的距離它最近的 switch。但多層 switch 嵌套實在是少見。

continue 其作用爲結束本次循環,即跳過循環體中下面尚未執行的語句,然後進行下一次是否執行循環的判定。

continue 語句和 break 語句的區別是,continue 語句只結束本次循環,而不是終止整個循環。break 語句則是結束整個循環過程,不再判斷執行循環的條件是否成立。而且,continue 只能在循環語句中使用,即只能在 for、while 和 do…while 中使用,除此之外 continue 不能在任何語句中使用。

示例

#include <stdio.h>
#include <stdlib.h>

int main()
{
	int i=0;
	while(1)
	{
		i++;
		if(i<10){
			printf("i<10,continue....i=%d\n",i);
			continue;
		}

		printf("i++...i=%d\n",i);
		if(i>10){
			printf("i>10 break...i=%d\n",i);
			break;
		}
	}
	printf("hello world...\n");
	system("pause");
}

執行結果:
在這裏插入圖片描述

上面的測試代碼 i<10 執行continue語句,後面的printf(“i++…i=%d\n”,i)並沒有執行 而是繼續判斷循環條件 執行i++的操作 一直到i>=10以後才繼續執行continue語句後面的代碼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章