填空题
下列程序的输出结果是{{U}} 【6】 {{/U}}。
#define PR(a)printf("%d/t",(int)(a))
#define PRINT(a)PR(a);printf("ok!")
main()
{ int i,a=1;
for(i=0;i<3;i++)
PRINT(a+i);
printf("/n");}
【正确答案】
1、1 2 3 ok!
【答案解析】[解析] 本题主要考查了printf函数用在了宏替换中。宏替换不是函数调用,只是一种简单的字符替代。所以本题中PRINT(a+i)展开为:printf(“%d/t”,(int) (a+i)),当i=0时,输出1;当i=1时,输出2;当i=2时;输出3;for循环结束后输出ok!。