当前位置: 代码迷 >> C语言 >> [求助]这个程序是什么意思?
  详细解决方案

[求助]这个程序是什么意思?

热度:109   发布时间:2006-07-16 15:34:07.0
[求助]这个程序是什么意思?

下面这个程序我不懂, 请帮我讲解一下, 还有它的运行结果等等:

main()
{
int i, ,j, m, n;
i=8; j=10;
m=++i; n=j++;
printf("%d,%d,%d,%d", i, ,j, m, n );
}


----------------解决方案--------------------------------------------------------
i=8,j=10,m=9,n=10.应该是这样
----------------解决方案--------------------------------------------------------
main()
{
int i, ,j, m, n;
i=8; j=10;
m=++i; n=j++;
printf("%d,%d,%d,%d", i, ,j, m, n );
}

====>
m = ++i; ==> m = 9, i = 9
n = j++; ==> n = 10, next j = 11

----------------解决方案--------------------------------------------------------
能不能跟我具体地讲解一下?
这是书本上的程序, 它的答案说是: 193, 4660, 65535.
郁闷得要死`~~根本不懂它说些什么~~
----------------解决方案--------------------------------------------------------
以下是引用摄政王:多尔滚在2006-7-16 15:39:25的发言:
main()

{

int i, ,j, m, n;

i=8; j=10;

m=++i; n=j++;

printf("%d,%d,%d,%d", i, ,j, m, n );

}


====>

m = ++i; ==> m = 9, i = 9

n = j++; ==> n = 10, next j = 11

是。你的对。


----------------解决方案--------------------------------------------------------
好像应该是像3楼说的那样的~~谢谢

----------------解决方案--------------------------------------------------------

书上答案很多时候是错的,要怀疑!


----------------解决方案--------------------------------------------------------

其实就是让你区分i++,i--,++i,--i的先后顺序。
这题我以前做过,还特地问了老师才懂的~


----------------解决方案--------------------------------------------------------
i在前就是+1之前的i
i在后就是+1之后的i

----------------解决方案--------------------------------------------------------
  相关解决方案