C语言程序问题?急急急

来源:百度知道 编辑:UC知道 时间:2024/06/02 06:44:08
main()
{
int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d\n",i,j,m,n);
getch();
}
请告诉我这段程序的答案?为什么?

足后的输出:9,11,9,10
++根据不同的位置有所不同。
作为变量前缀时,该变量先自加1,然后才吧值赋给其他变量。
作为变量后缀时,先把值赋给其他变量,然后该变量才自加1。

如果还不理解,我也没办法,这个东西你最好去看些书,仔细理解下。

9 11 9 1 ++在前先加再用,++在后先用后加

9 11 9 10

9 11 9 10

9,11,9,10

第4行 i是8
第5行 i是8 j是10
第6行 i+1是9后送给m m是9 j还是10
第7行 i是9 j是10送给n(n是10)后j+1 j是11 m还是9

a++ 先运算后++
++a 先++后运算

9 11 9 10
++i的意思是先加,然后赋值,j++是先赋值后加