有以下程序: #include #define M 6 #define g(x)(x*M) main() {int m,n,k=1; m=g(k+1); n=g(2); printf(’’%d,%d\n’’,m,n); } 程序运行后的输出

admin2021-06-15  25

问题 有以下程序:
#include
#define M 6   
#define g(x)(x*M)
main()
{int m,n,k=1;
m=g(k+1);
n=g(2);
printf(’’%d,%d\n’’,m,n);
}   
程序运行后的输出结果是(  )。

选项 A、7,12
B、12,12
C、7,11
D、7,7

答案A

解析 宏定义一定要先代入再计算表达式的值,m=(k+1*6)=(1+6)=7;n=(2*6)=12。
转载请注明原文地址:https://kaotiyun.com/show/9rtp777K
0

最新回复(0)