问题
单项选择题
有以下程序:
#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。