关于矩阵倒置:

题目描述

将一个2行3列的矩阵(二维数组)行列互换,存储到另一个3行2列的矩阵中。

要求以整型数据为例来解答。

输入

输入2行数据,每行3个整数,以空格分隔。

输出

行列互换后的矩阵,3行,每行2个数据,以空格分隔。

样例输入

1 2 3
4 5 6

样例输出

1 4
2 5
3 6
原代码:

#include<stdio.h>
int main()
{
int a[2][3],i,j;
int b[3][2];
for(i = 0;i<=1;i++){
for(j = 0;j<=2;j++){
scanf("%d  ",&a[i][j]);  (多一个空格导致格式错误)
b[j][i]=a[i][j];
}
}
for(i = 0;i<=2;i++)
{
for(j = 0;j<=1;j++)
printf("%d ",b[i][j]);
printf("\n");
}
return 0;
}

问题:sacnf ("%d ", &a[i]);的%d后面有个空格,在你输入数字后,sacnf会跳过所有空格字符,包括回车符,直到遇到不是空格字符才退出,把%d后的空格删除就可以了