C语言问题,这个程序哪里错了啊?

来源:百度知道 编辑:UC知道 时间:2024/05/13 07:10:50
#include <stdio.h>
float max=0,min=0;
void main()
{
float average(array[],int n);
float ave,score[10],i;
printf("please input 10 numbers:\n");
for(i=0;i<=9;i++)
scanf("%f",&score[i]);
ave=average(score,10);
printf("max=%f\nmin=%f\nave=%f\n",&max,&min,&ave);
}
float average(array[],int n)
{
float sum,i;
max=score[0];sum=score[0];
min=socre[0];
for(i=1;i<10;i++)
{
if(max<score[i])
max=score[i];
if(min>score[i])
min=score[i];
sum=sum+score[i];
}
ave=sum/n;
return ave;
}

说我第五行的array有问题什么的。。大家帮我看下
我用的是TC和VC都簿行

......
这辈子没见过这么可怕的程序,没改完我已崩溃。。。错误太多了,,,
float average(float score[],int n); //声明要放在函数外 并且指定参数类型
void main()
{
float ave,score[10]; //注意变量作用域
int i; //数组下表必须是整数
printf("please input 10 numbers:\n");
for(i=0;i<=9;i++)
scanf("%f",&score[i]);
ave=average(score,10);
//printf("max=%f\nmin=%f\nave=%f\n",max,min,ave); //printf加&
printf("ave=%f\n",ave);
}
float average(float score[],int n)
{
float sum;
float max,min;
int i;
max=score[0];sum=score[0];
min=score[0]; //打错了
for(i=1;i<10;i++)
{
if(max<score[i])
max=score[i];
if(min>score[i])
min=score[i];
sum=sum+score[i];
}
float ave=sum/n;
printf("max=%f\nmin=%f\n",max,min);
return ave;
}

float average(float score[],int n); //声明要放在函数外