以下程序的输出结果是【 】。 #include <stdio.h> #define MAX(x,y) (x)>(y)? (x):(y) main() { int a=5,b=2,c=3,d=3,t; t = M

admin2009-01-15  27

问题 以下程序的输出结果是【  】。
   #include  <stdio.h>
   #define  MAX(x,y)  (x)>(y)? (x):(y)
   main()
   {  int a=5,b=2,c=3,d=3,t;
      t = MAX(a+b,c+d)*10;
      printf("%d\n",1);
   }

选项

答案7

解析 程序中经过宏替换后,表达式t=MAX(a+b,c+d)*10变为t=(a+b)>(c+ d)? (a+b):(c+d) *10。因为 (a+b)>(c+d)为真,所以t=(a+b),输出结果为7。
转载请注明原文地址:https://kaotiyun.com/show/S9Xp777K
0

最新回复(0)