天天看點

switch語句的使用及注意事項

switch分支語句:

1)使用格式

switch(表達式A){

           case  常量表達式1;

                    語句1;

                    break;

           case  常量表達式2;

                    語句2;

                    break;

                    ……

           case  常量表達式n;

                    語句n;

                    break;

           default:

                    語句n+1; 

                     break;

}              

switch語句使用注意事項

注意點:

1)case後面隻能是常量,或者常量表達式

       整型或者可以轉成整型(可以自動類型提升為整型的)

       而且多個case後面的值不能相同

       case後預設第一句不能定義變量。非要定義可以加{}

2)default可以省略嗎?

      可以省略,但是不建議,因為它的作用是對不正确的情況給出提示

3)default一定要在最後嗎?

      不是,可以在任意位置,但是建議放在最後

4)break可以省略嗎?

      最後一個可以省略,其他最好不要省略

      會出現一個現象:case穿透

5)switch語句的結束條件

      遇到break就結束了

       執行到switch的有大括号 } 就結束了。 

應用:判斷季節

以下有運用到case穿透

#include <stdio.h>

int main(int argc, const char * argv[]) {
    
    int month = 0;
    printf("Enter the month:\n");
    scanf("%d",&month);
    
    switch (month) {
        case 12:
        case 1:
        case 2:
            printf("winter\n");
            break;
        
        case 3:
        case 4:
        case 5:
            printf("spring\n");
            break;
            
        case 6:
        case 7:
        case 8:
            printf("summer\n");
            break;
            
        case 9:
        case 10:
        case 11:
            printf("autumn\n");
            break;
            
        default:
            printf("Wrong entering!\n");
            break;
    }
    
    return 0;
}
           

繼續閱讀