问题
填空题
以下程序的输出结果是 。
# define MCNA(m)2*m
# define MCNB(n, m)2*MCRA(n)+m
# define f(x)(x*x)
main()
int i=2, j=3;
printf("% d\\n", MCRB(j, MCRA(i)));
答案
参考答案:P
解析: 本题定义了两个宏MCRA(m)和MCRB(n, m),展开宏MCRB(n, m),得到:MCRB(j, MCRA(i)=2*MCRA(j)+MCRA(i)=2×2×j+2×i=4×3+2×2=12+4=16,因此printf函数的输出结果为16。