c++写一函数,将一个3*3的整形矩阵转置
时间: 2023-06-05 07:47:41 浏览: 191
可以使用C++编写一个函数,将一个3*3的整形矩阵转置。
函数代码如下:
```c++
void transpose(int matrix[3][3])
{
for (int i = 0; i < 3; i++)
{
for (int j = i+1; j < 3; j++)
{
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
```
使用该函数,可以将一个3*3的整形矩阵转置。例如,假设有以下矩阵:
```c++
int matrix[3][3] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
}
```
调用该函数
```c++
transpose(matrix);
```
转置后的结果为:
```c++
{
{1, 4, 7},
{2, 5, 8},
{3, 6, 9}
}
```
相关问题
写一个函数,将一个3*3的整型矩阵转置。使用c++
以下是一个示例代码:
```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` 函数。
写一个函数,将一个3*3的整型矩阵转置。用c++写
以下是一个将3*3矩阵转置的C++函数:
```cpp
void transpose(int matrix[3][3]) {
for(int i = 0; i < 3; i++) {
for(int j = i+1; j < 3; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
```
这个函数通过两个循环来遍历矩阵,交换每个元素的值,得到矩阵的转置。