哪位大佬帮我找一下这个程序哪里出错了,运行不了?
#include<stdio.h>doublescore(doubleresult);main(){inta[10];inti;printf("请输入10个学生的成绩\n...
#include<stdio.h>
double score(double result);
main()
{
int a[10];
int i;
printf("请输入10个学生的成绩\n");
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
score(a[10]);
}
double score(int b[10])
{
int i,x;
double result;
for(i=0;i<10;i++)
{
x+=b[i];
}
result/=10;
//result = x/10;
printf("%f",result);
} 展开
double score(double result);
main()
{
int a[10];
int i;
printf("请输入10个学生的成绩\n");
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
score(a[10]);
}
double score(int b[10])
{
int i,x;
double result;
for(i=0;i<10;i++)
{
x+=b[i];
}
result/=10;
//result = x/10;
printf("%f",result);
} 展开
3个回答
展开全部
您好,很高兴能够回答您的问题。您的这个程序我没有运行,但是大致上知道您想进行的操作。您是想通过函数的调用,求出10个学生成绩的平均值。您的错误主要在主函数中调用score函数的那句话。这里面有两个错误,第一,c语言中,数组的下标是从0开始的,所以依据您的定义,这个a数组中是没有a〔10〕这个元素的;第二,您是要将a数组中的每个值作为实参传递给b数组中,但是若直接写a〔10〕的话,代表只是将数组a中下标为10的元素传递给b数组。
不知您是否明白,您可以按照我上面的说明,试着再对程序进行改进,有问题再交流哦,相信您可以做得很好!
不知您是否明白,您可以按照我上面的说明,试着再对程序进行改进,有问题再交流哦,相信您可以做得很好!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询