C语言编程题用数组写一个矩阵的转置
时间: 2023-11-18 08:02:15 浏览: 113
013 C语言用二维数组实现矩阵转置
5星 · 资源好评率100%
好的,下面是用C语言编写一个矩阵的转置的示例代码:
```c
#include <stdio.h>
#define ROWS 3
#define COLS 3
void transpose(int matrix[ROWS][COLS], int result[COLS][ROWS]) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
result[j][i] = matrix[i][j];
}
}
}
int main() {
int matrix[ROWS][COLS] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int result[COLS][ROWS];
transpose(matrix, result);
printf("Original matrix:\n");
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
printf("\nTransposed matrix:\n");
for (int i = 0; i < COLS; i++) {
for (int j = 0; j < ROWS; j++) {
printf("%d ", result[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个示例中,我们首先定义了一个3x3的矩阵,并声明一个用于存储转置矩阵的二维数组。然后我们定义了一个名为`transpose`的函数,它接受一个二维数组和一个用于存储转置矩阵的二维数组。该函数使用两个嵌套循环来遍历原始矩阵,并将转置后的值存储在结果数组中。
在`main`函数中,我们调用`transpose`函数来计算矩阵的转置,并打印出原始矩阵和转置后的矩阵。
阅读全文