有关学习C语言的函数的疑问,求助
数组a中存放了一个学生5门课程的成绩,求平均成绩。
float aver(float a[5])
{
int i;
float av,s=a[0];
for(i=1;i<5;i++)
s=s+a[i];
av=s/5;
return av;
}
void main()
{
float sco[5],av;
int i;
printf("\ninput 5 scores:\n");
for(i=1;i<5;i++)
scanf("%f",&sco[i]);
av=aver(sco);
printf("average score is %5.2f",av);
}
我有疑问的是当我输入数据是5个50的时候,程序输出的数据竟然是40.00.这里就不明白了.
参考答案:for(i=1;i<5;i++)
这里你只循环了四次,c数组下标是从0开始的,这里是从0到4;
改为
for(i=0;i<5;i++)
函数里那个也是这样改