请选出以下程序的输出结果( )。 #include <stdio.h> #define MIN(x,y) (x<y)? x:y main() { int i,j,k; i=10;j=15; k

admin2009-01-15  24

问题 请选出以下程序的输出结果(    )。    #include  <stdio.h>    #define  MIN(x,y)  (x<y)?  x:y    main()    {  int i,j,k;       i=10;j=15;       k=10*MIN(i,j);       printf("%d\n",k);    }

选项 A、15
B、100
C、10
D、150

答案4

解析 本题考查宏定义。在C语言中,宏是直接替换的,所以表达式k=10*MIN(i,j)被直接替换为k=10*(i<j)? i:j,在这个表达式中,10*(i<j)的值为非零,所以整个表达式的值应为i的值,即为10。
转载请注明原文地址:https://jikaoti.com/ti/tJK0FFFM
0

最新回复(0)