函数fun的功能是:从三个形参a,b,C中找出中间的那个数,作为函数值返回。 例如,当a=3,b=5,c=4时,中数为4。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLAN

admin2016-10-29  26

问题 函数fun的功能是:从三个形参a,b,C中找出中间的那个数,作为函数值返回。
    例如,当a=3,b=5,c=4时,中数为4。
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
  注意:源程序存放在考生文件夹下的BLANKl.C中。
  不得增行或删行,也不得更改程序的结构!
#include
int fun(int a,int b,int c)
{
  int t;
/**********found**********/
    t  =  (a>b)  ?  (b>c?  b  :(a>c?c:
____1____)):((a>c)?____2____:((b>c)?
c:____3____));
    return t;
}
main()
{  int a1=3,a2=5,a3=4,r;
  r=fun(a1,a2,a3);
  printf("\nThe middle number is:
%d\n",r);
}

选项

答案(1)a (2)a (3)b

解析 第一空:语句“(a>b)?(b>c?”表示a>b>c,根据题目要求,则中间值为b,若只是满足第一个“?”前面的条件,而c>b,则选择执行“(a>c?c:__1__)”,当a>c时取值c,所以a    第二空:语句“(a>c)?”是对a、c的比较选择,第三空处的“(b>c)?c”根据b、c的判断,题目已经给出了c,所以这里应该是a。
    第三空:第三空中对于b、c的判断选择缺少b,
转载请注明原文地址:https://jikaoti.com/ti/KWi0FFFM
0

最新回复(0)