填空题
给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:1 5 7 23 87 5 8 21 45
按升序排列时的中间数为:8
处理后主函数中输出的数列为:8 8 8 23 87 8 8 21 45
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 9
int fun(int x[])
{int i,j,k,t,mid,b[N];
for(i=0;i<N;i++)
b[i]=x[i];
for(i=0;i<=N/2;i++)
{k=i;
for(j=i+1;j<N;j++)
if(b[k]>b[j])k=j;
if(k!=i)
{
/*********found*********/
t=b[i];b[i]=
1;
b[k]=t;
}
}
/*********found*********/
mid=b[
2];
for(i=0;i<N;i++)
/*********found*********/
if(x[i]
3mid)x[i]=mid;
return mid;
}
main()
{int i,x[N]={1,5,7,23,87,5,8,21,45};
for(i=0;i<N;i++)
printf("%d",x[i]);
printf("/nThe mid data is:%d/n",fun(x));
for(i=0;i<N;i++)
printf("%d",x[i]);
printf("/n");
}