int i; for(i=0;i++<10;i++)i++; printf("%d",i); 此程序中为什么输出的i为13

2024-12-05 03:09:38
推荐回答(2个)
回答1:

当第三次循环完毕后i==9
第四次循环时 判断i++<10,就是9<10,为真 然后又执行3次i++,于是i=12
第五次循环判断 i++<10;就是12<10,为假,然后i=i+1,最后i==13
换成这样可能看明白点
这个是一样的结果
int i=0;
while(i++<10)
{
i++;
i++;
}

回答2:

原来还可以这样写程序的,向你请教你个问题:为什么不是for(i=0;i<10;i++)