黑马程序员技术交流社区

标题: 以下程序的输出是 [打印本页]

作者: 几率收割    时间: 2015-6-29 23:24
标题: 以下程序的输出是
以下程序的输出是( B  )
   int x=1,y=0,a=0,b=0;
   switch(x){
      case 1:
         switch(y){
             case 0: a++;break;
             case 1: b++;break;
         }
      case 2:
          a++;break;
      case 3:
          a++;b++;
    }
    System.out.println(“a=”+a+”,b=”+b);                    2  0
 A.a=1, b=0      B.a=2,b=0    C.a=1, b=1     D.a=2, b=2
作者: 贾森    时间: 2015-6-29 23:37
case 1 --> case 0  break; --> case2 break;  最后就是2,0咯
作者: vilion    时间: 2015-6-29 23:43
case 1:
         switch(y){
             case 0: a++;break;
             case 1: b++;break;
         }没有break
所以继续case 2
而case 2中都有break 所以停止了。因此答案是 2,0
作者: wx_J25HxI5W    时间: 2015-6-30 00:01
楼上正解




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2