有以下程序: #include #define PT 3.5 ; #define S(x) PT*x*x ; main() { int a=1, b=2; printf("%4.1f\n" , S(a+b)); } 程序运行后的输出结果是(  )。

🔥 1181 热度
A 7.5
B 31.5
C 程序有错无输出结果
D 14.0
参考答案
C
解析
【解析】宏定义不是C语句,末尾不需要有分号。所以语句printf("%4.1f\n" , S(a+b));展开后为printf("%4.1f\n" ,3.5;*a+b*a+b;);所以程序会出现语法错误。