问题 单项选择题

有以下程序
#include <stdio.h>
#define N 5
#define M N+1
#define f(x) (x*M)
main()
int i1,i2;
i1=f(2);
i2=f(1+1);
printf("%d%d\n",i1,i2);

程序的运行结果是

A.12 12

B.11 7

C.11 11

D.12 7

答案

参考答案:B

解析: 根据宏替换的替换规则,我们可知,f(2)=2*N+1==2*5+1=11,f(1+1)=1+1*N+1=1+ 1*5+1==7。

计算题
单项选择题