原题是这样的:
#include<stdio.h>
void main()
{
int i,x=0;
for(i=1;i<5;++i)
{
if(i%2==1)
x=x+i;
else
x--;
}
printf("%d ",x);
}
最后输出的结果是2,
与for(i=1;i<5;i++的结果一样。
所以在表达式三中,i++与++i 一样对吗?
不一样,但是for语句中只需要i自增1就可以了,所以结果一样。其实i++和++i很好区分,比如
main()输出值为1,2
3,3;
i++和++i都表示i自增,但是a=i++表示将i的值赋给a,而b=++i则表示先将i自增一下后赋给b.