矩阵的转置矩阵123 456 c++
时间: 2024-10-15 07:05:34 浏览: 10
矩阵的转置是指将矩阵的行变成列,或者将列变成行。对于给定的3x3矩阵:
```
1 2 3
4 5 6
```
其转置矩阵会变成:
```
1 4
2 5
3 6
```
在C++中,你可以通过创建一个新的矩阵,并遍历原矩阵的元素来实现转置。这里是一个简单的示例代码片段:
```cpp
#include <iostream>
using namespace std;
// 定义矩阵结构体
struct Matrix {
int rows;
int cols;
int data[9]; // 假设是3x3矩阵
};
// 函数来计算并返回转置矩阵
Matrix transpose(Matrix original) {
Matrix transposed;
transposed.rows = original.cols;
transposed.cols = original.rows;
for (int i = 0; i < transposed.rows; ++i) {
for (int j = 0; j < transposed.cols; ++j) {
transposed.data[j * transposed.rows + i] = original.data[i * original.cols + j];
}
}
return transposed;
}
int main() {
Matrix matrix = {3, 3, {1, 2, 3, 4, 5, 6}};
Matrix transposed = transpose(matrix);
// 输出转置后的矩阵
for (int i = 0; i < transposed.rows; ++i) {
for (int j = 0; j < transposed.cols; ++j) {
cout << transposed.data[i * transposed.cols + j] << " ";
}
cout << endl;
}
return 0;
}
```
阅读全文