switch()語句塊的出口:break;
阿新 • • 發佈:2018-12-30
switch()語句塊裡的case:相當於一個開關,只要滿足case的條件,開關就開啟,從而執行case語句塊的內容,而break就相當於一個出口,只要碰到了break,就跳出switch語句塊,否則就繼續執行下一條語句,直到碰到了break或者switch語句塊已經全部執行才會跳出語句塊。
#include<stdio.h>
int main()
{
int num = 0;
printf("請輸入一個數:\n");
scanf("%d", &num);
switch (num)
{
case 1:
num += 10 ; //無break;
case 2:
num -= 1;
break;
case 3:
num *= 3; //無break;
case 4:
num /= 2;
break;
case 5:
num %= 5; //無break;
default:
printf("這兒什麼也不做!\n");
break;
}
printf("num = %d\n", num);
system("pause");
return 0;
}
執行程式,根據輸出結果也可以得出:
從第二張圖片可以很明顯的看出,程式在進入case 5:執行完裡面的語句後,沒有退出switch()語句塊,而是進入default執行了那個輸出語句才退出的,由此,可以證明前面的結論。
一般的,為了保證程式的健壯性和程式的邏輯正確性,在每個case :和default :後面都跟著braek;語句,當然,也有例外的時候,當多個case :的處理機制相同時,那麼可以把這幾個case :連著寫,在最後一個case :的最後加上break;這樣避免的程式碼冗餘。