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;
}