c语言 矩阵转置。将一个二维数组行和列互换,存到另一个二维数组中。【123456】
时间: 2023-06-15 09:06:09 浏览: 112
以下是一个简单的 C 语言程序,实现了矩阵转置功能:
```c
#include <stdio.h>
#define ROWS 2
#define COLS 3
int main()
{
int matrix[ROWS][COLS] = {{1, 2, 3},
{4, 5, 6}};
int transposed[COLS][ROWS];
// transpose the matrix
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
transposed[j][i] = matrix[i][j];
}
}
// print the transposed matrix
for (int i = 0; i < COLS; i++) {
for (int j = 0; j < ROWS; j++) {
printf("%d ", transposed[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个程序中,我们首先定义了一个名为 `matrix` 的二维数组,它包含 2 行和 3 列的元素。然后,我们定义了一个名为 `transposed` 的新二维数组,用于存储转置后的矩阵。
接下来,我们使用两个嵌套的 `for` 循环遍历 `matrix` 数组中的所有元素,并将其存储在 `transposed` 数组中的相应位置。具体来说,我们将 `matrix[i][j]` 中的值存储在 `transposed[j][i]` 中。
最后,我们使用另外两个嵌套的 `for` 循环遍历 `transposed` 数组,并将其打印出来,以验证转置是否正确。
阅读全文