有以下程序 #include <stdio.h> #define S(x) x/x*x main( ) { int k=6, j=3; printf("%d,%d\n", S(k+j), S(j+k)); } 程序运行后的输出结果是

admin2021-07-09  15

问题 有以下程序
#include <stdio.h>
#define  S(x)  x/x*x
main( )
{  int  k=6, j=3;
   printf("%d,%d\n", S(k+j), S(j+k));
}
程序运行后的输出结果是

选项 A、27,27
B、9,9
C、27,29
D、29,29

答案C

解析 定义一个带参数的宏时,字符串内的形参通常要用圆括号括起来,以避免出错,本题中,S(k+j)相当于执行运算k+j/k+j*k+j,将k,j值代入运算后取整为27,S(j+k)同理,因此答案为C选项。
转载请注明原文地址:https://kaotiyun.com/show/gEkp777K
0

最新回复(0)