#include <stdio.h>
#define sqr(x) x*x
main()
{int a,k=3;
a=++sqr(k+1);
printf(“%d\n”,a);
}
运行结果为:9
请问:它的运行计算过程是怎样的?
若我将k+1代入计算为:k+1*k+1=7 再自加为 8 ,请问错在哪里?
若我将k+1代入计算为:(k+1)*(k+1)=16 再自加为 17 ,请问错在哪里?
#define sqr(x) x*x
main()
{int a,k=3;
a=++sqr(k+1);
printf(“%d\n”,a);
}
运行结果为:9
请问:它的运行计算过程是怎样的?
若我将k+1代入计算为:k+1*k+1=7 再自加为 8 ,请问错在哪里?
若我将k+1代入计算为:(k+1)*(k+1)=16 再自加为 17 ,请问错在哪里?
>> 本文固定链接: http://www.vcgood.com/archives/2263
>> 转载请注明: avexazhong 2008年04月10日 于 C语言帝国 发表
a=++3+1*3+1=4+4+1=9
谢谢!
不好意思
问:a=(++3)+(1*3)+1=4+3+1=8 吗?