【发布时间】:2020-02-07 22:45:33
【问题描述】:
在第二个矩阵中重新排序我的数值的最简单方法是什么,其中 90 在左上角,10 在右下角?我的大脑一片空白,我知道必须有任何简单的方法来解决这个问题。非常感谢任何帮助!
这就是我想要实现的目标。
#include <iostream>
using namespace std;
void main() {
cout << "Before:" << endl;
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
int matrix[9][9] = {
{ 10,11,12,13,14,15,16,17,18 },
{ 19,20,21,22,23,24,25,26,27,},
{ 28,29,30,31,32,33,34,35,36 },
{ 37,38,39,40,41,42,43,44,45 },
{ 46,47,48,49,50,51,52,53,54 },
{ 55,56,57,58,59,60,61,62,63 },
{ 64,65,66,67,68,69,70,71,72 },
{ 73,74,75,76,77,78,79,80,81 },
{ 82,83,84,85,86,87,88,89,90 }
};
cout << matrix[i][j] << " ";
}
cout << endl;
}
cout << "After:" << endl;
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
int transMatrix[9][9] = {
{ 10,11,12,13,14,15,16,17,18 },
{ 19,20,21,22,23,24,25,26,27,},
{ 28,29,30,31,32,33,34,35,36 },
{ 37,38,39,40,41,42,43,44,45 },
{ 46,47,48,49,50,51,52,53,54 },
{ 55,56,57,58,59,60,61,62,63 },
{ 64,65,66,67,68,69,70,71,72 },
{ 73,74,75,76,77,78,79,80,81 },
{ 82,83,84,85,86,87,88,89,90 }
};
cout << transMatrix[j][i] << " ";
}
cout << endl;
}
}
【问题讨论】:
-
std::transform 肯定能胜任
-
@Ian Copenhaver 至于我,我还没有理解这个问题。:)
-
@VladfromMoscow 我认为 Ian 想对角映射矩阵
-
我已根据我对问题的理解(以及我尝试阅读屏幕截图缩略图中模糊的文字)修正了标题和说明。
标签: c++ loops for-loop multidimensional-array