选择题
35.
有以下程序:
#include<stdio.h>
#define S(x)x*x/x
main()
{ int k=6,j=3;
printf("%d,%d\n",S(k+j+2),S(j+k+2));
}
程序运行后的输出结果是______。
A、
11,11
B、
29,29
C、
26,29
D、
121,121
【正确答案】
B
【答案解析】
#define命令是C语言中的一个宏定义命令,标识符一般使用大写,为了区分其他标识符,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本。宏定义不进行其他操作,仅仅只是替换标识符。S(k+j+2)=k+j+2×k+j+2/k+j+2,经计算得29;s(j+k+2)=j+k+2×k+j+2/j+k+2,经计算得29。因此输出为29,29。答案为选项B。
提交答案
关闭