i++和++i怎么算啊?设i=3,

如题所述

    当i=3时,i++就是在循环中执行语句时i中的变量值还是3,在下一次循环时再次经过i++语句后,此时执行语句时i的取值才是4,++i是经过该语句后,一次循环中的下面的语句都执行i=4,等到下次循环到++i语句时,此时的i取值就是5了,就是说i++是先执行再自加一,而++i是先自加一再加入运算。

    “++”是编程语言中的自增运算符,其作用是将变量中的数值在每经过该语句后自动执行加一运算,++i和i++是有区别的,区别在于++i是先将i变量中的数值进行加一运算,然后再执行下面的语句,而i++是先执行下面的语句,即i还是以原来的值加入运算,然后再自加一。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-02-11
main(){
int i=1,j=1;
i++;
++j;
printf("%d,%d",i,j);
}
这个结果最后是“1,1”
这个说明单独用++i 或者i++的效果都是一样的,都是自加一
main(){
int i=0,j=0;
int x=0,y=0;
x=++i;
y=j++;
printf("%d,%d",x,y,i,j);
}
这个输出的结果就是“1,0,1,1”
因为++i如果与等号相连的时候就会先执行++操作,之后再给等号的另一边赋值
如果是i++与等号相连的时候就会先给等号另一边赋值,然后再做++运算
只是++运算都会执行,只是在有等号的时候是先赋值还是先计算的区别本回答被网友采纳
第2个回答  2010-02-10
int i = 3;
System.out.println(i++);
System.out.println(i);
int k=3;
System.out.println(++k);
System.out.println(k);
输出结果:
3
4
4
4

i++是先输出i的值,再执行i++过程;
++i是先执行过程
第3个回答  2010-02-10
假设a=0 b=0
a=b++
这样之后 a=0 b=1

a=++b
这样之后 a=1 b=1
第4个回答  2010-02-10
你可以直接参考c++