C语言 将二维数组a[4][5]中的元素按列存放到一维数组b[20]中,二维数组元素键盘输入

 我来答
防御333
2017-12-20 · TA获得超过5892个赞
知道大有可为答主
回答量:2348
采纳率:85%
帮助的人:2031万
展开全部
//希望我的回答对你的学习有帮助
#include <stdio.h>

int main()
{
int a[4][5] = {}, b[20] = {}; //定义并初始化为 0

for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 5; j++)
{
scanf("%d", &a[i][j]); //输入 20 个数据
}
}

printf("The a[4][5] is : \n");
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 5; j++)
{
printf("%4d", a[i][j]); //将输入的数据输出一遍
}
printf("\n"); //数组中输出一行之后,换行
}

for (int i = 0, k = 0; i < 5; i++) //因为要按列存储,所以数组中行变,列不变
//所以外层循环是 5 次,内层循环为 4 次
{
for (int j = 0; j < 4; j++)
{
b[k++] = a[j][i]; //将 a 中的值 赋值给 b
}
}

printf("The b[20] is : \n");
for (int i = 0; i < 20; i++)
{
printf("%3d", b[i]); //输出 b 中的数据
if (i == 9) printf("\n"); //输出 10 个换一行
}

return 0;
}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式