问题 单项选择题

有以下程序
#include<stdio.h>
#define PT3.5;
#define S(x)PT*x*x;
main()
inta=1,b2; printf("%4.1f\n",S(a+b);
程序运行后的输出结果是______。
A) 14.0 B) 31.5 C) 7.5 D) 程序有错无输出结果

答案

参考答案:D

解析: 本题考查的是宏定义。带参数的宏定义是按#define命令行中指定的字符串从左到右进行转换,其定义的—般形式为:#define宏名(参数表)字符串,因此在程序中宏定义后面不能有分号“;”,所以程序运行出错,没有输出结果, 因此,选项D是正确的。

单项选择题
判断题