c语言将一个矩阵进行转置
时间: 2024-12-15 20:17:38 浏览: 24
在C语言中,将一个矩阵进行转置通常涉及到两个步骤:创建一个新的矩阵并交换原矩阵的行和列。这里提供一个基本的示例,假设我们有一个二维数组代表矩阵:
```c
#include <stdio.h>
void transpose(int matrix[][n], int transposed[n][m]) {
int i, j; // 原矩阵的行和列索引
for (i = 0; i < n; i++) { // 遍历原矩阵的所有行
for (j = 0; j < m; j++) { // 遍历原矩阵的所有列
transposed[j][i] = matrix[i][j]; // 将原矩阵的元素复制到新矩阵对应位置
}
}
}
int main() {
int original[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}; // 原始矩阵
int transposed[4][3];
// 转置矩阵
transpose(original, transposed);
// 输出转置后的矩阵
printf("转置后的矩阵:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 4; j++) {
printf("%d ", transposed[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个例子中,`transpose`函数接受一个原始矩阵和一个空的新矩阵,然后通过双层循环交换它们的元素,完成转置操作。
阅读全文