以下程序的输出结果是_______。 #define f(x) x*x main() { int a=6,b=2,c; c=f(A) /f(B) ; printf("%d\n",C) ; }

admin2010-05-22  38

问题 以下程序的输出结果是_______。    #define  f(x)  x*x    main()    {  int  a=6,b=2,c;       c=f(A) /f(B) ;       printf("%d\n",C) ;    }

选项 A、9
B、6
C、36
D、18

答案4

解析 观察程序段可知,对带参数的宏的展开只是将语句中的宏名后面括号内的实参字符串代替#define命令行中的形参。本题中c=f(a)/f(b)用#define f(x)x*x代替得c=f(6)/f(2),即c=6*6/2*2,结果为36。
转载请注明原文地址:https://kaotiyun.com/show/0tWp777K
0

最新回复(0)