C语言设计一个子函数,由键盘输入一个n×n的矩阵将其转置,并在主函数中调用此函数将一个4×4的矩阵转置,并在主函数中输出结果。
时间: 2023-07-15 12:11:05 浏览: 90
下面是一个实现的示例代码:
```c
#include <stdio.h>
// 转置矩阵的子函数
void transpose(int matrix[][4], int n) {
int temp;
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
// 交换 matrix[i][j] 和 matrix[j][i]
temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
int main() {
int matrix[4][4];
// 从键盘输入矩阵
printf("请输入一个4x4的矩阵:\n");
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 调用转置矩阵的子函数
transpose(matrix, 4);
// 输出转置后的矩阵
printf("转置后的矩阵为:\n");
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
```
运行示例:
```
请输入一个4x4的矩阵:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
转置后的矩阵为:
1 5 9 13
2 6 10 14
3 7 11 15
4 8 12 16
```
阅读全文