黑马程序员技术交流社区
标题:
Switch 和case 的使用注意事项以及穿透效果的使用
[打印本页]
作者:
wangchao1992
时间:
2015-8-9 22:40
标题:
Switch 和case 的使用注意事项以及穿透效果的使用
本帖最后由 wangchao1992 于 2015-8-12 15:00 编辑
switch 使用注意事项
//1、switch语句的表达式类型
// 1)可以放一个整型的变量 int num = 10;switch (num)
// 2)可以放一个整形常量 switch (10)
// 3)可以放一个返回值是整型的表达式 switch (5+5),num = 5+5
// 4)还可以放可以转换为int类型的表达式 switch ('a') case 97:
case 使用注意事项
1、case语句可以有多个
// 0) case语句格式: case 常量表达式: (空格和冒号不能省)
// 1) 可以是常量 case 10:
// 2) 如果放表达式,那么只可以是常量表达式 case 5+5:
// 3) default语句的位置可以任意放
// 4) case的穿透问题,同样适用于 default
// 5) 如果default语句放到 switch语句的最后,可以不加break
// 如果不是放到最后,是必须加上break的
// 6) case 后面不能是实数 (单精度,双精度都不可以)
// 7) case 语句之后,默认的第一句话不能定义定义变量
// 如果第一句话非要定义,应该加上大括号
下面是switch case 穿透效果的应用
#include <stdio.h>
int main(int argc, const char * argv[]) {
//定义变量
int month;
//提示用户输入一个月份
printf("请输入一个月份,范围1-12之间:\n");
//接收用户输入的月份
scanf("%d",&month);
//校验
if (month<1 || month>12) {
printf("月份不合法!\n");
return 0;
}
//判断处于哪个季节
switch (month) {
case 12:
case 1:
case 2:
printf("冬季,男人最讨厌的季节\n");
break;
case 3:
case 4:
case 5:
printf("春季,一个充满生机的季节\n");
break;
case 6:
case 7:
case 8:
printf("夏季,一个充满黑丝的季节\n");
break;
case 9:
case 10:
case 11:
printf("秋季,一个不安分的季节\n");
break;
}
return 0;
}
作者:
wangchao1992
时间:
2015-8-12 15:01
顶一
下
作者:
408205555
时间:
2015-8-12 16:14
我也顶一下。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2