Switch语句没有case的例子

在学习c语言的时候,这方面就没有弄得很清楚。
下面举例说明:

int a = 2;
int b = 3;
switch (a){
      default:
          b++;
      case  3:
          b++;
      case  4:
          b++;    
}
System.out.println("b="+b);

这段代码的特点是每一句都没有break,所以每一句都不会跳出。
首先查找2,没有对应的case,直接运行default ,b=4。
由于没有break,直接进行下一步case 3 ,使得b的值再加一,b=5 。
又没有break,再直接进行下一步case 4 ,使得b的值再加一,b=6 。
运行完这些以后已经没有下一条语句,所以跳出switch。
最终得到b的值为6 。


如果将上面的default语句放到case语句的最后面,即

switch (a){   
      case  3:
          b++;
      case  4:
          b++;  
      default:
          b++; 

这会导致直接b执行最后default语句,只自加一次,便退出switch语句,使得最后的b的值为4 。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值