问题 单项选择题

以下程序的输出结果是_________。
#include<stdio.h
#defineFUDGE(y) 2.84+y
#define PR(

A.printf("%d",(int)(A) )
#definePRINT1(A) PR(A) ;putchar('\n')
main()
int x=2;
PRINT1

B.12

C.13

D.15

答案

参考答案:B

解析:[评析] 在程序中如果有带实参的宏,则按#define命令行中指定的字符串从左到右进行置换,如果串中包含宏中的形参,则将程序语句中相应的实参代替形参。将实参带入已经定义的宏中,可以得出答案为“12”。

单项选择题
判断题