问题 单项选择题

下面程序的运行结果是()
    #include" iostream.h"
    #define sum(a,b)a * b
    void main( )
     int x;
     x=sam(1+2,3);
     cout < < x;

A. 0

B. 9

C. 7

D.5

答案

参考答案:C

解析:

考查宏定义的简单运用。

[解题要点] 理解宏定义,sum(a,b)o * b中a为1+2,b为3,故sum(1+2,3):1+2 * 3,即宏定义的替换过程是原样替换。

[错解分析] 选项B)的计算方法足(1+2) * 3=9是错误的,注意,不要随意的加括号。

[考点链接] 宏定义与函数的区别。

单项选择题
单项选择题