A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 瑜尚 中级黑马   /  2016-7-16 11:04  /  1160 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

C语言还提供了另一种用于多分支选择的switch语句, 其一般形式为:
switch(表达式){
    case 常量表达式1:  语句1;
    case 常量表达式2:  语句2;
    …
    case 常量表达式n:  语句n;
    default:  语句n+1;
}
其语义是:计算表达式的值。 并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。
这里需要注意,这种写法会造成穿透
switch(表达式){
    case 常量表达式1:  语句1;break;
    case 常量表达式2:  语句2;break;
    …
    case 常量表达式n:  语句n;break;
    default:  语句n+1;
}
这样就不会穿透了,但是由时候需要利用穿透,所以看来什么时候使用break,是需要灵活选择的,这也是c的精妙之处吧,个人理解

1 个回复

倒序浏览
都是看实际用的,一个题目,有好多实现方法的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马