多路分支
switch(控制表达式){
case 常量:
语句
...
case 常量:
语句
...
default:
语句
...
}
控制表达式只能是整数型结果,常量可以是常数,也可以是常数计算的表达式。
switch语句可以看作一种基于计算的跳转,计算控制表达式的值后,程序会跳转到相匹配的分支标号处。
分支标号只是说明switch内部位置的路标,在执行完分支中的最后一条语句后,如果后面没有break,就会顺序执行到下面的case里去,直到遇到一个break,或者switch结束为止。
例如:
switch(type){
case 1:
case 2:
printf("你好\n");
break;
case 3:
printf("晚上好\n");
case 4:
printf("再见\n");
break;
default:
printf("啊\n");
break;
}
type=1或2时,输出结果都是“你好”,type=3时,结果是“晚上好 再见”,type=4时,结果是“再见”。