矩阵转置的c语言程序
时间: 2025-01-08 20:05:21 浏览: 38
矩阵转置是指将矩阵的行变成列,列变成行的操作。在C语言中,我们可以创建一个函数来实现这个功能。以下是一个简单的示例,用于计算一个二维数组(矩阵)的转置:
```c
#include <stdio.h>
// 函数声明,接收一个行m列n的矩阵并返回其转置
void transpose(int matrix[][n], int m, int n) {
int transposed[n][m]; // 新建一个转置后的矩阵
// 遍历原矩阵进行转置
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
transposed[j][i] = matrix[i][j]; // 将元素交换到新位置
}
}
// 输出转置后的矩阵
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
printf("%d ", transposed[i][j]);
}
printf("\n");
}
}
int main() {
int size;
printf("Enter the number of rows and columns for the matrix: ");
scanf("%d %d", &size, &size); // 输入矩阵尺寸,假设行数等于列数
int matrix[size][size];
printf("Enter the elements of the matrix:\n");
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 调用转置函数
transpose(matrix, size, size);
return 0;
}
```
在这个程序中,用户首先输入矩阵的维度和元素,然后调用`transpose`函数进行转置,并打印出结果。
阅读全文
相关推荐
















