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

admin2021-02-25  19

问题 有以下程序:
#include<stdio.h>
#define N5
#define M N+l
#define f(x)(x*M)
main()
{int i1,i2:
i1=f(2):
i2=f(1+1);
printf("%d%d\n",i1,i2);
}
程序运行后的输出结果是(  )。

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

答案D

解析 本题考查宏定义的用法,宏定义只是做个简单的替换,所以本题中执行f(2)=(2*N+1)=11,执行f(1+1)=(1+1*N+1)=7。选项D正确。
转载请注明原文地址:https://jikaoti.com/ti/z6z0FFFM
0

随机试题
最新回复(0)