if(x++)相当于if(x>0);x=x+1;结果是判断x>0为假,但x从0变成1,然后做第二次判断if(x++&&y>=1)时,x变成2,而由于此判断成立,所以第三个if不会执行,因此x为2,w=y=1.
第一个if先判断x是否为真,即这里是不等于零为真,再执行加一操作,此时先判断不为真,执行加一后x变成1,再执行else if x等于1为真y等于2也为真,x又执行了加一操作,变成了2,w也被赋值为y,此时后面的else不再执行了,就出现了打印的结果。