懵逼了,怎么看switch和case?

img

你可以把switch看做一大堆if...else的简写
先看switch(x),x=1,所以匹配case 1,你就把它当做if(x==1)来看
那么就走进switch(y)这个分支里面
y=0,所以又走进了switch(y)的case 0里面,执行a++,然后break,就从y分支里出去了
然而x的case 1里没有break,所以会继续走进case 2里,再执行a++;b++;之后break出去了
现在你知道a和b是多少了吗

a = 2 ,b =1

switch(x) case 1
switch(y) case 0
//case 1没有break;
switch(x) case 2