题解 | 矩阵转置
矩阵转置
https://www.nowcoder.com/practice/351b3d03e410496ab5a407b7ca3fd841
#include<stdio.h>
int main()
{
int n,m;
scanf("%d %d", &n,&m);
int arr[10][10] = { 0 };
for (int i = 0; i < n; i++)//定义初始矩阵,行为n,列为m
{
for (int j = 0; j < m; j++)
{
scanf("%d", &arr[i][j]);
}
}
int trr[10][10] = { 0 };//定义转置矩阵
for (int i = 0; i < m; i++)//转置矩阵行列值和正常矩阵相反
{
for (int j = 0; j < n; j++)
{
trr[i][j] = arr[j][i];
}
}
for (int i = 0; i < m; i++)//输出时按照转置后的行列顺序输出
{
for (int j = 0; j < n; j++)
{
printf("%d ", trr[i][j]);
}
printf("\n");
}
return 0;
}
思路:另外建一个二维数组存放转置后的数据,最后输出