问答题 函数fun的功能是:从三个形参a,b,c中找出中间的那个数,作为函数值返回。
例如,当a=3,b=5,c=4时,中数为4。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在 下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
int fun(int a, int b, int c)
{
int t;
/**********found**********/
t=(a>b)?(b>c? b: (a>c?c:______)):((a>c)?______:((b>c)?c:______));
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
答案考生文件夹 [解析] fun函数的功能是求得三个数中间的数。
第一空:语句“(a>b)?(b>c?”表示a>b>c,根据题目要求,则中间值为b,若只是满足第一个“?”前面的条件,而c>b,则选择执行“(a>c?c:______)”,当a>c时取值c,所以a<c时中间值为a,所以第一空填“a”。
第二空:语句“(a>c)?”是对a、c的比较选择,第三空处的“(b>c)?c”根据b、c的判断,题目已经给出了c,所以这里应该是a。
第三空:第三空中对于b、c的判断选择缺少b,所以这里填“b”。
[考点] if语句及其构成的选择。