第一步if(a) 因为a=0;所以不会执行第二步else if(!b) b为1,所以不会执行 if(!c)是套在第二步里面的。所以不会执行。最后d就是初始值20
因为if(!c)是嵌套在if(!b)里面的看嵌套结构的if语句,你要一层一层剥洋葱一样的去看外面的不执行,里面的也不可能执行
条件都不成立 所以那些if语句都是迷惑干扰用的,最后输出的就是最先声明的值 int d=20;