问题 单项选择题

有如下程序段:
#include<stdio.h>
#define Max(a,b) a>ba:b
main()

int a=5,b=6,c=4,d;
d=c+Max(a,b);
printf("%d",d);

其输出结果为______。

A.10

B.5

C.6

D.编译错误

答案

参考答案:B

解析:[评析] 在C语言中,宏定义是直接替换的,所以在c+a>ba:b这个条件表达式中,c+a>b为真,所以用a的值作为整个表达式的值,而a的值为5,所以整个表达式的值为5。

填空题
填空题