给出求二维矩阵转置的C++函数代码
时间: 2024-04-11 11:27:19 浏览: 35
以下是一个简单的示例代码,用于计算二维矩阵的转置:
```cpp
#include <iostream>
#include <vector>
// 计算二维矩阵的转置
std::vector<std::vector<int>> transposeMatrix(const std::vector<std::vector<int>>& matrix) {
int rows = matrix.size();
int cols = matrix[0].size();
// 创建一个新的矩阵来存储转置结果
std::vector<std::vector<int>> transpose(cols, std::vector<int>(rows, 0));
// 遍历原矩阵,并将元素放入转置矩阵的对应位置
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
transpose[j][i] = matrix[i][j];
}
}
return transpose;
}
int main() {
std::vector<std::vector<int>> matrix = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
std::cout << "原矩阵:" << std::endl;
for (const auto& row : matrix) {
for (int num : row) {
std::cout << num << " ";
}
std::cout << std::endl;
}
std::vector<std::vector<int>> transpose = transposeMatrix(matrix);
std::cout << "转置矩阵:" << std::endl;
for (const auto& row : transpose) {
for (int num : row) {
std::cout << num << " ";
}
std::cout << std::endl;
}
return 0;
}
```
这段代码定义了一个名为`transposeMatrix`的函数,它接受一个二维矩阵作为参数,返回该矩阵的转置矩阵。转置矩阵的行列互换,即原矩阵的第 i 行第 j 列元素变为转置矩阵的第 j 行第 i 列元素。
在示例中,我们创建了一个3x3的原矩阵,并使用`transposeMatrix`函数计算出其转置矩阵。然后,我们分别输出原矩阵和转置矩阵到控制台。
请注意,这只是一个简单的示例代码,实际应用中可能需要根据具体问题进行修改和扩展。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)