关于二维数组指针作函数参数的问题
/*void search(float (*p)[4],int n)改定义成void search(float *p,int n)为什么就不可以?*/#include <stdio.h>
#define NUM 3
main()
{
void average(float *p,int n);
void search(float (*p)[4],int n);/*为什么定义成void search(float *p,int n)就不可以?*/
float score[][4]={65,67,70,60,80,87,90,81,90,99,100,98};
average(*score,12);
search(score,2);
}
void average(float *p,int n)
{
float *pend;
float sum=0,aver;
pend=p+12-1;
for(;p<=pend;p++)
sum+=*p;
aver=sum/n;
printf("average=%5.2f\n",aver);
}
void search(float (*p)[4],int n)/*为什么定义成void search(float *p,int n)就不可以?*/
{
int i;
printf("第%d个学生的成绩是:",n);
for(i=0;i<4;i++)
printf("%5.2f ",*(*(p+n-1)+i));
}