有以下程序 #include #define N5 #define MN+1 #define f(x) (x*M) main() { int i1, i2; i1 = f(2) ; i2 = f(1+1) ; printf("%d %d\n

admin2015-07-31  29

问题 有以下程序
#include
#define  N5
#define  MN+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;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/Qbi0FFFM
0

最新回复(0)