谁能帮我理解这道题!!
有以下程序int x=0,y=5,z=3;
while(z-->0&&++x<5)y=y-1;
printf("%d,%d,%d\n",x,y,z); 问执行后的输出结果是多少 答案是 x=3 y=2 z=-1
想破脑壳 外加验证 都得不出他的答案
我的思路是最后一次计算 (还没递减)z--=1>0 && (已经递加)x=3<5 y=2
递减后就是 z=0>0 && x=3<5 y=2 因为是计算之后 还没开始计算 也成立
再开始计算 z=0>0 && x=4<5 y=1 因为Z已经等于0了 表达式不成立 x取值3 y取值2 z因该取值0啊 为什么算式都不运行了 Z还要再次递减一次