填空题 1.  函数fun()的功能是:从3个形参a,b,c中找出中间的那个数,将其作为函数值返回。
    例如,当a=3,b=5,c=4时,中间的数为4。
    注意:部分源程序如下。
    请勿改动main()函数和其他函数中的任何内容,仅在fun()函数的横线上填入所编写的若干表达式或语句。
    试题程序:
    #include<stdio.h>
    int fun(int a,int b,int c)
    {
    int t;
    t=(a>b)?(b>c?b:(a>c?c:______)):
    ((a>c)?______:((b>c)?c:______)):
    return t;
    }
    void main()
    {
    int a1=3,a2=5,a3=4,r;
    r=fun(a1,a2,a3);
    printf("\nThe middle number is:%d\n",r);
    }
  • 1、
【正确答案】 1、a
   a
   b    
【答案解析】 本题考查条件运算符嵌套构成复杂的条件表达式的能力。条件运算符规则为:表达式?a:b。首先判断表达式的值,若为真(即非零),则取a值作为整条语句的值,否则取b值作为整条语句的值。其中fun()函数的功能是:从3个形参a,b,c中找出中间的那个数,作为函数值返回。fun()函数中复杂的表达式可以转换成if…else语句,由此可以清楚地判断出第1空处填“a”,第2空处填“a”,第3空处填“b”。