C程序题,帮一下忙!!!

来源:百度知道 编辑:UC知道 时间:2024/05/20 11:04:01
float average(float array[10])
{ int i,sum;
float aver;
sum=array[0];
for (i = 1;i<10;i++) sum=array[i];
aver = sum/10;
return(aver);
}
main()
{ float score[10], aver;
int i;
printf("input 10 scores:\n");
for (i = 0;i < 10;i++) scanf("%d",&score[i]);
printf("\n");
aver=average(score);
printf("average score is %5.2f", aver );

哪里不对呀,结果显示不出来
}

2个问题
第一,float数组,赋值当然是以%f输入
第二,函数中要进行累加,而不是覆盖,sun+=数组元素,而不是直接=

float average(float array[10])
{ int i,sum;
float aver;
sum=array[0];
for (i = 1;i<10;i++) sum+=array[i];
aver = sum/10;
return(aver);
}
main()
{ float score[10], aver;
int i;
printf("input 10 scores:\n");
for (i = 0;i < 10;i++) scanf("%f",&score[i]);
printf("\n");
aver=average(score);
printf("average score is %5.2f", aver );
}

首先sum不是定义的数组类型,这样做只会一个一个的取代sum=array[i]