输入一个n*m大小的矩阵,将其行列互换,第1行换成第1列,第2行换成第2列,依此类推。
1 <= n, m <= 100
输入描述:
第一行两个整数n,m
接下来n行,每行m个整数
输出描述:
m行,每行n个整数,表示互换之后的矩阵。
自解答案:
#include <bits/stdc++.h>
using namespace std;
int main() {
// 请补全代码,实现题目功能
int n,m;
cin >> n >> m;
int a[n][m];
int b[m][n];
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++){
cin >> a[i][j];
}
}
for (int j = 0; j < m; j++)
{
for (int i = 0; i < n; i++){
b[j][i] = a[i][j];
cout << b[j][i] <<" ";
}
cout <<" "<< endl;
}
return 0;
}
标准答案:
#include <iostream>
using namespace std;
int main() {
int n, m;
cin >> n >> m;
int nums[m][n];
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
cin >> nums[j][i];
for (int i=0; i<m; i++) {
for (int j=0; j<n; j++)
cout << nums[i][j] << " ";
cout << endl;
}
return 0;
}