问题
单项选择题
下面程序的运行结果是 #include"iostream.h" #define sum(a,b)a*b void main() {int x; X=sum(1+2,3); cout<<x; }
A.0
B.9
C.7
D.5
答案
参考答案:C
解析:[命题目的] 考查宏定义的简单运用。 [解题要点] 理解宏定义,sum(a,b)a*b中a为1+2,b为3,故sum(1+2,3)=1+2*3,即宏定义的替换过程是原样替换。 [错解分析] 选项B)的计算方法是(1+2)*3=9是错误的,注意,不要随意加括号。 [考点链接] 宏定义与函数的区别。