以下程序的输出结果是 ______。 #define SQR(X) X * X main() { int a=16,k=2,m=1; a/=SQR(k/m)/SQR(k+m); printf("%d\n",A)

admin2013-02-23  29

问题 以下程序的输出结果是 ______。    #define  SQR(X)  X * X    main()    {  int a=16,k=2,m=1;      a/=SQR(k/m)/SQR(k+m);      printf("%d\n",A) ;    }

选项 A、16
B、2
C、9
D、1

答案2

解析 C语言在预编译时遇到带实参的宏名,则按命令行中指定的字符串从左到右进行置换。在做这题时,也不妨运用置换法。得到a/=k+m*k+m/k+m*k+m=16/7=2。注:a为整型,所以在做除法,自动取整。
转载请注明原文地址:https://kaotiyun.com/show/9SPp777K
0

最新回复(0)