执行完for(i=1;i++<4;)语句后,i的值是多少?

要解释的,我知道答案是5,但是不知道为什么?是C的问题
2025-06-20 14:23:35
推荐回答(5个)
回答1:

因为是后置++,先比较i是否小于4,那么等于4则退出,在++,就变成5了
如果是++i答案就是4

回答2:

1:i=1 i<4 i+1
2: i=2 i<4 i+1
3: i=3 i<4 i+1
4: i=4 i=4 i+1此时终止循环i=5
再不明白就没办法了

回答3:

楼上说的已经很全面了,我来概括一下:i++是先取i的值运算(这里是比较),再自加. 如:i=2; a=i++; /*这里等于 i=2; a=i; i=i+1;*/ /*如果是++i,相当于 i=2; i=i+1; a=i;*/ 小弟也是初学,希望能帮到你…

回答4:

你把FOR中的语句拆开理解把
I=1 I++
你的语句貌似有问题
你可以看做
I原本是等于1的
当I比4小的时候
I就自增 (+1)
1+1 =2
还是小于4
再加
=3
加到I<4式子不成立;了

回答5:

i++是先运算和自增的。
如果i=3则因为i<4
for循环继续,i变为4;
再判断i<4错了,
i又自增为5退出循环。