汕头市委地址:求助啊~C语言的问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/03 01:06:38
这个程序是输入10个数,然后输出平均数和最大值和最小值,平均数能输出,其他两个总是得0,请各位帮忙解答一下错在哪了,我把源代码公布出来...

#include<stdio.h>
void main()
{float average(float a[10]);
float a[10];
float aver,score[10],m,n;
int i;
float max(float a[10]);
float min(float a[10]);
for(i=0;i<10;i++)
scanf("%f",&score);
aver=average(score);
m=max(a);
n=min(a);
printf("%f%f%f\n",aver,m,n);
getch();
}

float average(float a[10])
{
float num,sum=a[0];
int i;
for(i=1;i<10;i++)
sum=sum+a;
num=sum/10;
return(num);
}

float max(float a[10])
{
int i;
float maxy,x=0;
for(i=0;i<10;i++)
{if(x<a)
x=a;
}
maxy=x;
return(maxy);
}

float min(float a[10])
{
int i;
float mini,y=a[0];
for(i=0;i<10;i++)
{
if(a<y)
y=a;
}
mini=y;
return(mini);
}

1 scanf("%f",&score); --> scanf("%f",&score[i]);
2 m=max(a);n=min(a); --> m = max( score ); n = min( score)
3 所有的a都少了a[i]
所以改为如下:

#include<stdio.h>
void main()
{float average(float a[10]);
float a[10];
float aver,score[10],m,n;
int i;
float max(float a[10]);
float min(float a[10]);
for(i=0;i<10;i++)
scanf("%f",&score[i]);
aver=average(score);
m=max(score);
n=min(score);
printf("%f%f%f\n",aver,m,n);
getch();
}

float average(float a[10])
{
float num,sum=a[0];
int i;
for(i=1;i<10;i++)
sum=sum+a[i];
num=sum/10;
return(num);
}

float max(float a[10])
{
int i;
float maxy,x=a[0];
for(i=1;i<10;i++)
{if(x<a[i])
x=a[i];
}
maxy=x;
return(maxy);
}

float min(float a[10])
{
int i;
float mini,y=a[0];
for(i=1;i<10;i++)
{
if(a[i]<y)
y=a[i];
}
mini=y;
return(mini);
}

for(i=0;i<10;i++) scanf("%f",&score[i]);
漏了[i]