编写一函数,将一个3×3矩阵转置,即行列互换。要求在主函数中输入原矩阵,输出转置后的矩阵 用c语言解
时间: 2024-04-01 15:35:11 浏览: 21
好的,这是一个简单的程序,可以使用 C 语言实现:
```c
#include <stdio.h>
void transpose(int matrix[][3]) {
int temp;
for (int i = 0; i < 3; i++) {
for (int j = i; j < 3; j++) {
temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
int main() {
int matrix[3][3];
// 输入原矩阵
printf("请输入3x3矩阵的元素:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 转置矩阵
transpose(matrix);
// 输出转置后的矩阵
printf("转置后的矩阵:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个程序中,我们定义了一个 `transpose` 函数来实现矩阵的转置。该函数接受一个 `3x3` 的矩阵作为参数,并通过行列互换的方式来转置矩阵。
在 `main` 函数中,我们首先输入原矩阵,然后调用 `transpose` 函数来转置矩阵。最后,我们输出转置后的矩阵。