写一个函数,将一个3*3的整型矩阵转置(指针+函数)

#include
int zhuanzhi(int (*p)[3],int (*q)[3])
{
    int i,j;
    for(i=0;i<3;i++)
      for(j=0;j<3;j++)
      {
         *(*(q+j)+i)=*(*(p+i)+j);
      }
}
int main()
{int i,j;
    int a[3][3]={{1,2,3},{4,5,6},{7,8,9}},b[3][3];
    printf("原矩阵为:\n");
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
           printf("%5d",a[i][j]);
        }
        printf("\n");
    }
    int *p,*q;
    p=a;q=b;
    zhuanzhi(p,q);
     printf("转置后的矩阵为:\n");
        for( i=0;i<3;i++)
    {
        for( j=0;j<3;j++)
        printf("%5d",b[i][j]);
        printf("\n");
    }
}

你可能感兴趣的:(写一个函数,将一个3*3的整型矩阵转置(指针+函数))