题目: 矩阵调整
题目描述
给定一个M行N列的矩阵,请将矩阵reshape成N行M列的矩阵。
输入描述
首先输入一行包含两个正整数M和N, 其中0 < M, N < 1000, M表示矩阵的行数,N表示矩阵的列数。
接下来是M行,每一行有N个数字,表示矩阵的一行。
输出描述
输出为N行,每一行有M个用空格隔开的数字,表示Reshape后矩阵的每一行。
样例输入
2 3 1 2 3 4 5 6
样例输出
1 2 3 4 5 6
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
矩阵转置,在循环嵌套语句里面,正常数组的i,j互换一下就可以了
void main()
{
/*
2、将二维数组int a[3][3]的行列转换后输出,如:
1 2 3 输出成: 1 4 7
4 5 6 2 5 8
7 8 9 3 6 9
提示:如果stu[i][j]表示第i行第j列,则转换之后应该在第j行第i列,即应该为与stu[j][i]的位置,所以循环输出j行,每行输出i列就可以
*/
int a[3][3];
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
printf("------------------------------------\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%d\t",a[j][i]);
}
printf("\n");
}
}