以下是使用 C 语言来实现将 2×3 的矩阵 a 转置后存入 3×2 的矩阵 b 中的程序:
时间: 2024-12-22 19:33:46 浏览: 8
在C语言中,你可以使用嵌套循环来实现矩阵转置的操作。这里是一个简单的示例,假设 `a` 和 `b` 分别是二维数组,分别代表2x3矩阵和3x2矩阵:
```c
#include <stdio.h>
// 定义矩阵的行数和列数
#define ROW_A 2
#define COL_A 3
#define ROW_B 3
#define COL_B 2
void transpose(int a[ROW_A][COL_A], int b[ROW_B][COL_B]) {
// 检查输入矩阵维度是否合适
if (ROW_A != ROW_B || COL_A != COL_B) {
printf("矩阵尺寸不匹配,无法转置。\n");
return;
}
// 矩阵转置操作
for (int i = 0; i < ROW_A; i++) { // 遍历原矩阵的第一维
for (int j = 0; j < COL_B; j++) { // 遍历新矩阵的第二维
b[j][i] = a[i][j]; // 将对应元素复制到转置矩阵
}
}
}
int main() {
// 初始化矩阵a和b
int a[ROW_A][COL_A] = {{1, 2, 3}, {4, 5, 6}};
int b[ROW_B][COL_B] = {0};
transpose(a, b);
// 打印转置后的矩阵b
for (int i = 0; i < ROW_B; i++) {
for (int j = 0; j < COL_B; j++) {
printf("%d ", b[i][j]);
}
printf("\n");
}
return 0;
}
```
阅读全文