用c语言调用函数完成3行3列的矩阵转置
时间: 2023-07-27 15:17:22 浏览: 179
以下是用C语言实现3行3列的矩阵转置的示例代码:
```
#include <stdio.h>
void transpose(int mat[][3], int trans[][3]) {
int i, j;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
trans[j][i] = mat[i][j];
}
}
}
int main() {
int mat[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int trans[3][3];
int i, j;
transpose(mat, trans);
printf("Original matrix:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", mat[i][j]);
}
printf("\n");
}
printf("\nTransposed matrix:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", trans[i][j]);
}
printf("\n");
}
return 0;
}
```
运行结果:
```
Original matrix:
1 2 3
4 5 6
7 8 9
Transposed matrix:
1 4 7
2 5 8
3 6 9
```
在上面的代码中,我们定义了一个`transpose`函数,该函数接受两个参数,一个是原始矩阵`mat`,另一个是转置后的矩阵`trans`。在函数中,我们使用两个循环遍历原始矩阵的所有元素,并将它们赋值给转置矩阵对应的位置。最后,在主函数中,我们定义了一个3行3列的矩阵`mat`,和一个3行3列的转置矩阵`trans`,并调用`transpose`函数进行转置。最后,我们打印出原始矩阵和转置矩阵的元素。
阅读全文