switch case default_switch语句和break语句

v2-0f47755a90eac25a8b8076a1136d5573_1440w.jpg?source=172ae18b

显示输入的整数除以3所得余数的程序如代码清单 demo1.c 所示。

代码清单 demo1.c

v2-2b0666fdd5512e694ceaf841c6921d5c_b.jpg

本程序中使用了两次计算no除以3的余数的表达式no%3,多次输入同一个表达式,容易造成输入错误。不仅如此,同一个除法执行两次也会使程序略显冗长。

使用switch语句修改后的程序如代码清单 demo2.c 所示。

代码清单 demo2.c

v2-5c279da990575b3963232c5032926ee9_b.jpg

像“case 1:”这样用来表示程序跳转的标识称为标签(label)

标签的值必须为常量,不可为变量。另外,不允许多个标签同为一个值。程序跳到该标签后,会按顺序执行其后的语句,因此画面中会显示“该数除以3的余数是1。”。

当程序执行到 break语句(break statement) 时,switch语句执行结束。

break有“打破”“脱离”之意。执行break语句之后,程序就会跳出将它围起来的switch语句。

复杂的switch语句

代码清单 demo3.c 中的switch语句比较复杂。下面我们就以该程序为例,来加深对switch语句中的标签和break语句的动作的理解。

代码清单 demo3.c

v2-168fde858f6799b7549ef293156ea86f_b.jpg
  • 有些 case 语句没有写 break,如果此时检查到条件满足该 case,程序执行完该 case 的语句,会继续执行下一个case的语句,直到遇到 break。
  • 当控制表达式的判断结果与任何一个case都不一致的时候,程序就会跳转到 default: 继续执行。
► 如果改变本程序switch语句中标签的顺序,程序的执行结果也会发生改变.所以在使用switch语句的时候,一定要正确书写标签的顺序。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值