1.输出指针二维数组的相关信息,使用指针打印输出。
#include<stdio.h>
#include<math.h>
void main(){
int a[][3]={1,2,3,4,5,6,7,8,9};
int i,j,k;
//第一列元素
printf("%d %d %d\n",*a,*(a+1),*(a+2));
printf("%d %d %d\n",a,a+1,a+2);//表示每行a[0][i] a[1][i] a[2][i]的地址
printf("%d %d %d %d\n",*a,&a[0],&a[0]+0,&a[0][0]);
printf("%d %d %d\n",**a,a[0][0],*(a[0]));
printf("%d %d %d %d\n",*(a+1),a[1],a[1]+0,&a[1][0]);
printf("%d %d %d\n",**(a+1),a[1][0],*(a[1]));
printf("%d %d %d %d\n",*(a+2),a[2],a[2]+0,&a[2][0]);
printf("%d %d %d\n",*(*(a+2)),*(a[2]),a[2][0]);
//第二列元素
printf("%d %d %d\n",*a+1,&a[0][1],a[0]+1);
printf("%d %d %d\n",*(*(a)+1),*(a[0]+1),a[0][1]);
printf("%d %d %d\n",*(a+1)+1,&a[1][1],a[1]+1);
printf("%d %d %d\n",*(*(a+1)+1),*(a[1]+1),a[1][1]);
printf("%d %d %d\n",*(a+2)+1,&a[2]+1,*a[2]+1);
printf("%d %d %d\n",*(*(a+2)+1),a[2][1],*(a[2]+1));
//第三列元素
printf("%d %d %d\n",*a+2,&a[0][2],a[0]+2);
printf("%d %d %d\n",*(*a+2),*(a[0]+2),a[0][2]);
printf("%d %d %d\n",*(a+1)+2,&a[1][2],a[1]+2);
printf("%d %d %d\n",*(*(a+1)+2),*(a[1]+2),a[1][2]);
printf("%d %d %d\n",*(a+2)+2,&a[2][2],(a[2]+2));
printf("%d %d %d\n",*(*(a+2)+2),a[2][2],*(a[2]+2));
}