写一个函数,将一个3*3的整型矩阵转置。使用c++
时间: 2023-06-14 10:06:38 浏览: 271
以下是一个示例代码:
```c++
#include <iostream>
void transpose(int matrix[3][3]) {
for (int i = 0; i < 3; i++) {
for (int j = i+1; j < 3; j++) {
std::swap(matrix[i][j], matrix[j][i]);
}
}
}
int main() {
int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
std::cout << "Original matrix:\n";
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
std::cout << matrix[i][j] << " ";
}
std::cout << "\n";
}
transpose(matrix);
std::cout << "Transposed matrix:\n";
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
std::cout << matrix[i][j] << " ";
}
std::cout << "\n";
}
return 0;
}
```
输出:
```
Original matrix:
1 2 3
4 5 6
7 8 9
Transposed matrix:
1 4 7
2 5 8
3 6 9
```
在这个示例代码中,我们定义了一个 `transpose` 函数来转置矩阵。对于一个3x3的矩阵,我们可以通过两个循环(一个嵌套在另一个内部)来遍历矩阵的所有元素。对于每个元素,我们交换它和对应的元素(即行列互换)。最后,我们在 `main` 函数中声明一个3x3的矩阵并调用 `transpose` 函数。
阅读全文