对矩阵进行转置最重要的是值的交换,这里用到了二重数组 

#include <stdio.h>
#include <stdlib.h>

int main()
{
   int a[3][3]={1,2,3,4,5,6,7,8,9};//初始化一个矩阵出来
   int b[3][3]={0};

   for(int i=0;i<=2;i++)
   {
       for(int k=0;k<=2;k++)
       {
           b[k][i]=a[i][k];//对矩阵进行转置,交换不同位置的值



       }
   }

   printf("原矩阵为:\n");
    for(int i=0;i<=2;i++)
    {
        for(int k=0;k<=2;k++)
        {
            printf("%-2d",a[i][k]);



        }
        printf("\n");


    }
    printf("矩阵经过转置后:\n");

    for(int i=0;i<=2;i++)
    {
        for(int k=0;k<=2;k++)
        {
            printf("%-2d",b[i][k]);



        }
        printf("\n");


    }


    return 0;
}

这是代码结果

与君共勉

更多推荐

C语言对矩阵进行转置