不明白为啥是这个答案

img


怎样一个逻辑然后输出那样的答案啊怎么想都想不通到底是怎么回事呢

知识点
1.switch的case标签中不加break会贯穿标签
这里switch分为内外两层,内层是有break的,外层没有break,所以一旦进入case 1,会将case 2,default的代码都执行一遍
2.a>0本来返回的结果是true,但是写进switch里它会隐式转换为int型,所以是1,b<0返回0,c==5返回1

a>0 =1
b<0 =0
以此类推,真为1,假为0