有以下程序: #include #define MULl(x,y)x*y #define MUL2(x,y)(x)*(y) #define MUL3(x,y)(x*y) main() { int m=2,n

admin2016-06-23  2

问题 有以下程序:
    #include
    #define MULl(x,y)x*y
    #define MUL2(x,y)(x)*(y)
    #define MUL3(x,y)(x*y)
    main()
    {  int m=2,n=3;
    print{(“%d,%d,%d\n”,MULl(m,m+n)*2,MUL2(m,m+n)*2,MUL3(m,m+n)*2);
    }
    程序运行后的输出结果是(    )。

选项 A、10,20,14
B、20,20,20
C、10,10,10
D、14,14,14

答案A

解析 本题考查宏定义,宏定义在程序的预编译阶段直接进行文本替换,所以本题中宏定义展开如下:
    MULl(m,m+n)x2=m×m+n×2=2×2+3×2=10
    MUL2(m,m+n)×2=(m)×(m+n)×2=2×(2+3)×2=20
    MUIL3(m,m+n)×2=(m×m+n)×2=(2×2+3)×2=14
    程序输出结果为10,20,14答案为A。(注:宏定义中的形参一定要使用小括号括起来,以避免出错)
转载请注明原文地址:https://kaotiyun.com/show/cfID777K
0

相关试题推荐
随机试题
最新回复(0)