输入一个3*3的矩阵,将其转置(行列交换)后输出
时间: 2024-02-16 15:59:34 浏览: 161
好的,可以这样来实现:
```python
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 转置矩阵
transpose_matrix = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
for i in range(3):
for j in range(3):
transpose_matrix[i][j] = matrix[j][i]
# 输出转置后的矩阵
for i in range(3):
for j in range(3):
print(transpose_matrix[i][j], end=' ')
print()
```
这样就可以将输入的3*3矩阵转置并输出了。
相关问题
c语言输入一个3*3的矩阵,将其转置(行列交换)后输出
好的,可以这样来实现:
```c
#include <stdio.h>
int main()
{
int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int transpose_matrix[3][3];
int i, j;
// 转置矩阵
for(i = 0; i < 3; i++)
{
for(j = 0; j < 3; j++)
{
transpose_matrix[i][j] = matrix[j][i];
}
}
// 输出转置后的矩阵
for(i = 0; i < 3; i++)
{
for(j = 0; j < 3; j++)
{
printf("%d ", transpose_matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
这样就可以将输入的3*3矩阵转置并输出了。
C语言编写输入一个3*3的矩阵,将其转置(行列交换)后输出。
可以使用二维数组来表示一个3*3的矩阵,然后通过循环将其转置,最后输出转置后的矩阵即可。以下是示例代码:
```c
#include <stdio.h>
int main() {
int matrix[3][3];
int i, j, temp;
// 输入矩阵
printf("请输入一个3*3的矩阵:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 转置矩阵
for (i = 0; i < 3; i++) {
for (j = i + 1; j < 3; j++) {
temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
// 输出矩阵
printf("转置后的矩阵为:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
注意,上述代码中的转置算法是在不使用额外数组的情况下进行的,即直接在原矩阵上进行交换。如果需要将转置后的矩阵保存在一个新的数组中,可以使用一个新的二维数组来存储。
阅读全文