#include<stdio.h>
#include<stdlib.h>
int main()
{
int i,j;
float average(float array[],int n);
float score1[5];
float score2[10];
printf("please input 5 score:\n");
for(i=0;i<5;i++)
{ scanf("%d",&score1[i]);
}
printf("please input 10 score:\n");
for(j=0;j<10;j++)
{ scanf("%d",&score2[j]);
}
printf("The average of Class A is %5.2f",average(score1,i));
printf("\nThe average of Class B is %5.2f",average(score2,10 ));
system("pause");
return(0);
}
float average(float array[],int n)
{
int i;
float aver;
float sum=array[0];
for(i=1;i<n;i++)
sum=sum+array[i];
aver=sum/n;
return(aver);
}
需要float型的数据,但是你从键盘输入的时候用的是%d,所以全读成了整数了。改成%f即可。
for(i=0;i<5;i++)
{
scanf("%f",&score1[i]);//改成%f
}
printf("please input 10 score:\n");
for(j=0;j<10;j++)
{
scanf("%f",&score2[j]); //改成%f
}
我调试过你的代码,修改之后即可,见图: