求转置矩阵c语言
时间: 2023-07-13 12:15:07 浏览: 51
转置矩阵是指将矩阵的行列互换得到的新矩阵。以下是一个示例代码,可以实现转置矩阵的功能。
```c
#include <stdio.h>
#define ROW 3
#define COL 3
void transpose(int matrix[ROW][COL], int result[COL][ROW]) {
int i, j;
for(i = 0; i < ROW; i++) {
for(j = 0; j < COL; j++) {
result[j][i] = matrix[i][j];
}
}
}
int main() {
int matrix[ROW][COL] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int result[COL][ROW];
int i, j;
transpose(matrix, result);
printf("Original Matrix:\n");
for(i = 0; i < ROW; i++) {
for(j = 0; j < COL; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
printf("Transposed Matrix:\n");
for(i = 0; i < COL; i++) {
for(j = 0; j < ROW; j++) {
printf("%d ", result[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个示例代码中,我们定义了一个 `transpose` 函数,它接受一个原始矩阵和一个结果矩阵的指针作为参数。在函数内部,我们使用两个嵌套的循环来遍历原始矩阵,将每个元素复制到结果矩阵中。最后,我们在 `main` 函数中调用 `transpose` 函数,并输出原始矩阵和转置后的矩阵。