第一个问题:case 2 : x++;y=x+1;后面没有break语句,就这个程序而言会一直执行到有break的时候。第二个问题:if()括号里面判断的是逻辑值,x是一个变量,它是可以被赋值的,随便赋什么值都是正确的,所以会执行if()后面的语句。
因为x是2,所以执行第一条语句x++,y=x+1;所以x=3,y=3+1=4