visual studio 二维数组转置
时间: 2023-07-30 19:08:31 浏览: 105
在 Visual Studio 中,可以使用以下代码来实现二维数组的转置:
```cpp
#include <iostream>
const int ROWS = 3;
const int COLS = 4;
void transpose(int arr[][COLS], int transposed[][ROWS]) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
transposed[j][i] = arr[i][j];
}
}
}
int main() {
int arr[ROWS][COLS] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
int transposed[COLS][ROWS];
transpose(arr, transposed);
std::cout << "Original Array:" << std::endl;
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
std::cout << arr[i][j] << " ";
}
std::cout << std::endl;
}
std::cout << "Transposed Array:" << std::endl;
for (int i = 0; i < COLS; i++) {
for (int j = 0; j < ROWS; j++) {
std::cout << transposed[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
```
这段代码中,我们首先定义了一个 `transpose` 函数,该函数接受一个二维数组 `arr` 和一个用于存储转置结果的二维数组 `transposed`。在函数内部,我们使用两个嵌套的循环遍历原始数组中的元素,并将其赋值给转置数组中相应的位置。
在 `main` 函数中,我们定义了一个大小为 3x4 的二维数组 `arr`,并创建一个与之大小相同的二维数组 `transposed` 来存储转置结果。然后,我们调用 `transpose` 函数将 `arr` 转置后的结果存储到 `transposed` 数组中。
最后,我们分别输出原始数组和转置数组的内容,以验证转置是否成功。
请注意,此代码中的行列数是硬编码的,如果你需要处理不同大小的二维数组,你可以将其修改为动态获取行列数的方式。
阅读全文