有以下程序:
#include<stdio.h>
#define PT 3.5;
#define S(x)PT*x*x;
main()
{ int a=1,b=2;printf(“%4.1f\n”,S(a+b));}
程序运行后的输出结果是( )。
A、
7.5
B、
31.5
C、
程序有错无输出结果
D、
14.0
【正确答案】
C
【答案解析】
宏定义不是C语句,末尾不需要有分号。所以语句printf(“%4.1f、n”,S(a十b));展开后为prinif(“%4.1f\n”,3.5;*a+b*a+b;);所以程序会出现语法错误。
提交答案
关闭