问题 单项选择题

有以下程序:
#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。

解答题
单项选择题 共用题干题