c语言简单问题 拜托啊!!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/20 12:08:05
# include<stdio.h>
void main()
{
void average(float *p,int n);
float score[3][4]={{65,67,70,60},{80,87,90,81},{90,99,100,98}};
average(score,12);

getch();
}
void average(float *p,int n)
{ float *p_end;
float sum=0,aver;
p_end=*p+n-1;
for(;*p<=p_end;(*p)++)
sum=sum+(**p);
aver=sum/n;
printf("%average=%5.2f\n",aver);
}
编译时系统提示有错误 到底那里出错了??????????为什么呢????????
有人说是数组传递错误和指针运用错误 为什么有错????解释详细点 这个问题问好多人了 还是不明白

average(score,12);
改成
average(&score[0][0],12);

p_end=*p+n-1;
for(;*p<=p_end;(*p)++)
sum=sum+(**p);
改成
p_end=p+n-1;
for(;p<=p_end;p++)
sum=sum+(*p);

看错了,不好意思.
结合楼上的
printf("%average=%5.2f\n",aver);
变为printf("average=%5.2f\n",aver);