问题
填空题
以下程序的输出结果是______。
#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",t);
答案
参考答案:G
解析: 本题综合考查带参数的宏以及三目运算符的计算方法,三目运算符的一般形式是:<表达式1><表达式2>:<表达式3>
“”运算符的含义是:先求表达式1的值,如果为真,则求表达式2的值并把它作为整个表达式的值;如果表达式1的值为假,则求表达式3的值并把它作为整个表达式的值。
注意:在本题中宏替换时可采用逐步求解,最终为7>67:6*10,即t=7>67:60,其值为l=7。