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([ ])
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);
}