while(n++>2);是否相当于while(n>2){n++;}?#includemain(){int n=2,k=0;while(k++&&n++>2);printf("%d,%d",k,n);}输出的结果是?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 16:14:21
while(n++>2);是否相当于while(n>2){n++;}?#includemain(){int n=2,k=0;while(k++&&n++>2);printf(

while(n++>2);是否相当于while(n>2){n++;}?#includemain(){int n=2,k=0;while(k++&&n++>2);printf("%d,%d",k,n);}输出的结果是?
while(n++>2);是否相当于while(n>2){n++;}?
#include
main()
{
int n=2,k=0;
while(k++&&n++>2);
printf("%d,%d",k,n);
}
输出的结果是?

while(n++>2);是否相当于while(n>2){n++;}?#includemain(){int n=2,k=0;while(k++&&n++>2);printf("%d,%d",k,n);}输出的结果是?
两个表达式是一样的.
输出的结果为1,2
因为k的初值为0,当第一次循环的时候while循环的判断语句已经为0,所以直接就跳出循环,但是因为判断了一次,所以k++是要执行的,但是因为k++已经为0,就不用再执行后边的n++>2了
所以k自加了1,但是n没有