求助: 用多级指针和指针数组实现一个3*4的二维数组,求数组中所有元素的和及平均值

2024-11-23 12:28:45
推荐回答(1个)
回答1:

printf("%f\t%f\n",s,ave);}这是用指向一维数组的指针做的。 下面是用指针数组: #include "stdio.h" void main() {int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; int *p[3]={a[0],a[1],a[2]};int i,j;float s=0.0,ave=0.0; for(i=0;i<3;i++) for(j=0;j<4;j++) s=s+*(*(p+i)+j);ave=s/12;printf("%f\t%f\n",s,ave);}用二级指针: #include "stdio.h" void main() {int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; int *p[3]={a[0],a[1],a[2]};int **q;int i,j;float s=0.0,ave=0.0;q=&p[0];for(i=0;i<3;i++) s=s+*(*(q+i)+j);ave=s/12;printf("%f\t%f\n",s,ave);}其实,第一种方法直观,易懂。