实现矩阵3行3列的转置
时间: 2023-08-15 19:38:44 浏览: 32
要实现矩阵3行3列的转置,可以将矩阵沿主对角线翻转,即将矩阵的行和列交换位置。以下是C++代码实现:
```c++
#include <iostream>
using namespace std;
int main()
{
int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int transpose[3][3];
// 转置矩阵
for(int i=0; i<3; i++){
for(int j=0; j<3; j++){
transpose[i][j] = matrix[j][i];
}
}
// 输出转置后的矩阵
for(int i=0; i<3; i++){
for(int j=0; j<3; j++){
cout << transpose[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
输出结果为:
```
1 4 7
2 5 8
3 6 9
```
相关问题
java矩阵转置3x3 行转列
可以使用一个二维数组来表示矩阵,然后通过交换行和列的方式实现矩阵的转置。
以下是一个Java程序示例:
```java
public class MatrixTranspose {
public static void main(String[] args) {
int[][] matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
// 打印原始矩阵
System.out.println("原始矩阵:");
printMatrix(matrix);
// 转置矩阵
int[][] transposedMatrix = transposeMatrix(matrix);
// 打印转置后的矩阵
System.out.println("转置后的矩阵:");
printMatrix(transposedMatrix);
}
// 转置矩阵
public static int[][] transposeMatrix(int[][] matrix) {
int rows = matrix.length;
int cols = matrix[0].length;
int[][] transposedMatrix = new int[cols][rows];
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
transposedMatrix[j][i] = matrix[i][j]; }
}
return transposedMatrix;
}
// 打印矩阵
public static void printMatrix(int[][] matrix) {
for (int[] row : matrix) {
for (int element : row) {
System.out.print(element + " ");
}
System.out.println();
}
}
}
```
输出结果为:
```
原始矩阵:
1 2 3
4 5 6
7 8 9
转置后的矩阵:
1 4 7
2 5 8
3 6 9
```
编写程序, 实现矩阵(3行3列)的转置c
下面是实现矩阵转置的 C 语言代码:
```c
#include <stdio.h>
int main()
{
int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int i, j;
printf("原矩阵:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
printf("转置后的矩阵:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", matrix[j][i]);
}
printf("\n");
}
return 0;
}
```
运行结果:
```
原矩阵:
1 2 3
4 5 6
7 8 9
转置后的矩阵:
1 4 7
2 5 8
3 6 9
```
其中,`matrix` 是一个 3 行 3 列的矩阵,使用嵌套的 for 循环遍历每个元素,并输出原矩阵和转置后的矩阵。转置矩阵的第 i 行第 j 列元素等于原矩阵的第 j 行第 i 列元素。