c语言的问题 tk505填空

来源:百度知道 编辑:UC知道 时间:2024/07/04 18:59:20
tk505.c中有整形数组a[ ]。通过调用函数inputdata(),给a[ ]数组元素输入数据;通过调用函数process(),
实现去掉数组中一个最大数值和一个最小数值的元素,返回其余元素的平均值。
请在括号[ ]处补充完整程序,并删除[ ],运行测试,实现上述要求。不得增加行或删除行,也不得更改程序结构。

#include<stdio.h>
void main(void)
{
int a[10];
float process(int *);
void inputdata(int *);

inputdata(a);
printf("Score:%f\n",process(a));
}

float process(int *p)
{
int i,maxindex,minindex;
float aver=0;

maxindex=minindex=0;
for(i=1;i<10;i++)
{
if(*(p+maxindex)<*(p+i))
maxindex=i;
if([ ])
minindex=i;
}
*(p+maxindex)=0,*(p+minindex)=0;

for(i=0;i<10;i++)
aver=aver+*(p+i);

return *(p+minindex)>[ ];
}

void inputdata(int *k)
{
int i;
for(i=0;i<10;i++)
scanf("%d",k+i);
}

#include<stdio.h>
void main(void)
{
int a[10];
float process(int *);
void inputdata(int *);

inputdata(a);
printf("Score:%f\n",process(a));
}

float process(int *p)
{
int i,maxindex,minindex;
float aver=0;

maxindex=minindex=0;
for(i=1;i<10;i++)
{
if(*(p+maxindex)<*(p+i))
maxindex=i;
if(*(p+minindex)>*(p+i))
minindex=i;
}
*(p+maxindex)=0,*(p+minindex)=0;

for(i=0;i<10;i++)
aver=aver+*(p+i);

return aver/10;
}

void inputdata(int *k)
{
int i;
for(i=0;i<10;i++)
scanf("%d",k+i);
}