已知一个数值矩阵为求出该矩阵的转置矩阵 并输出其转置矩阵利用c语言
时间: 2023-09-19 18:06:15 浏览: 170
可以使用C语言的二维数组来表示数值矩阵,然后通过循环遍历数组元素,将其转置到另一个二维数组中,即可得到转置矩阵。具体代码如下:
```c
#include <stdio.h>
#define ROW 3
#define COL 3
void transpose(int mat[][COL], int trans[][ROW]) {
for (int i = 0; i < ROW; ++i) {
for (int j = 0; j < COL; ++j) {
trans[j][i] = mat[i][j];
}
}
}
int main() {
int mat[ROW][COL] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int trans[COL][ROW] = {0};
transpose(mat, trans);
printf("Original matrix:\n");
for (int i = 0; i < ROW; ++i) {
for (int j = 0; j < COL; ++j) {
printf("%d ", mat[i][j]);
}
printf("\n");
}
printf("Transposed matrix:\n");
for (int i = 0; i < COL; ++i) {
for (int j = 0; j < ROW; ++j) {
printf("%d ", trans[i][j]);
}
printf("\n");
}
return 0;
}
```
其中,`transpose`函数是实现转置矩阵的核心函数,它接受一个二维整型数组`mat`和一个二维整型数组`trans`,分别表示原始矩阵和转置矩阵。函数内部使用两个嵌套的循环遍历`mat`数组中的每一个元素,并将其转置到`trans`数组中对应的位置。最后,在`main`函数中,我们定义了一个3x3的矩阵`mat`,并初始化为1到9的连续整数。然后,定义一个3x3的转置矩阵`trans`,并将其所有元素初始化为0。接着,调用`transpose`函数,将`mat`矩阵转置到`trans`矩阵中。最后,分别输出原始矩阵和转置矩阵的所有元素。
阅读全文
相关推荐


















