再请教一道问题#include<stdio.h>main(){int y=10;do {y--;} while(--y);printf("%d\n",y--);}这道题目最后运行结果是0,为什么?
这个循环要执行完,必然有--y==0;此时推出此时的y==1.判断之后y==0.再执行printf("",y--)输出0,此时y==-1.
也就是说while括号里的要是0即假才跳出循环,所以推出--y=0,然后再逆推出y==1,可是y==1时y--应该为1才对呀?
是不是说y==1时,执行--y,得出--y为0,同时y也为0,之后再输出y--,因为y已经变为0,所以y--=0,是这样吗?