主题:请教这个特殊的:++1与1++的问题.
(2)请看以下程序:
① 试人工分析程序的输出,并将结果
写在下面
-1
②上机运行该程序,将运行结果写在下面
0
③ 如果两个结果不一样,试分析为什么?
【为什么输出的是0而不是-1】?
如果把++i改为i++,为什么输出的是1了???
请教一下,我的老师她说她也不清楚。。。。
#include <stdio.h>
void main()
{
int f(int a,int b);
int i=2,p;
p=f(i,++i);
printf("%d\n",p);
}
int f(int a,int b)
{
int c;
if(a>b) c=1;
else if(a==b) c=0;
else c=-1;
return(c);
}
① 试人工分析程序的输出,并将结果
写在下面
-1
②上机运行该程序,将运行结果写在下面
0
③ 如果两个结果不一样,试分析为什么?
【为什么输出的是0而不是-1】?
如果把++i改为i++,为什么输出的是1了???
请教一下,我的老师她说她也不清楚。。。。
#include <stdio.h>
void main()
{
int f(int a,int b);
int i=2,p;
p=f(i,++i);
printf("%d\n",p);
}
int f(int a,int b)
{
int c;
if(a>b) c=1;
else if(a==b) c=0;
else c=-1;
return(c);
}