int a[3][4],*p=a;为什么会出错?(结贴)
谢谢大家帮忙 终于改好了 懂了这个程序 指针应该算是明白了main()
{
int a[3][4],k,*p=*a;
float average(int *n);
void chengji(int,int *n);
void shuru(int a[][4]);
shuru(a);
printf("%.2f\n",average(p));
scanf("%d",&k);
chengji(k,p);
}
void shuru(int b[][4])
{
int m,n;
for(m=0;m<3;m++)
for(n=0;n<4;n++)
scanf("%d",*(b+m)+n);
}
float average(int *n)
{
int m;
float aver=0;
for(m=0;m<12;m++)
aver+=*n++;
aver/=12;
return aver;
}
void chengji(int g,int *n)
{
printf("%4d%4d%4d%4d\n",*(n+g*4),*(n+1+g*4),*(n+2+g*4),*(n+3+g*4));
}
[ 本帖最后由 njzhangyuhao 于 2011-2-26 14:36 编辑 ]