在c语言中可以进行矩阵的转置,要求将A[2][3]转置为B[3][2],那么首先需要定义要给2行3列的二维矩阵,然后对矩阵进行键盘的输入;设置转置函数,然后输出转置之后的函数;
//输入函数
void Input(int a[2][3]) {
int i, j;
for (i = 0; i < 2; i++) {
for (j = 0; j < 3; j++) {
printf("输入第%d行第%d列的数据:", i, j);
scanf("%d", &a[i][j]);
}
}
}
转置函数
void zz(int b[3][2], int a[2][3]) {
int i, j;
for (i = 0; i < 2; i++) {
for (j = 0; j < 3; j++) {
b[j][i] = a[i][j];
}
}
}
输出函数
void sc(int a[2][3], int b[3][2]) {
int i, j;
printf("原矩阵A为:\n");
for (i = 0; i < 2; i++) {
for (j = 0; j < 3; j++) {
printf("%5d", a[i][j]);
}
putchar(10);
}
printf("转置之后的矩阵B为:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 2; j++) {
printf("%5d", b[i][j]);
}
putchar(10);
}
}
主函数
int A[2][3], B[3][2];
//printf("请输入二维数组的元素输入:");
Input(A);
zz(B, A);
sc(A, B);