用c语言写代码三个一维数组如何合并成一个二维数组?

已知:三个一维数组
a[10] = {1,2,6,7,5,1,3,2,8,2}
b[10] = {1,6,3,4,7,1,3,8,1,5}
c[10] = {6,2,3,4,5,7,8,2,1,2}
求:一个二维数组
结果如下:如何用c语言写代码
d[10][3]={{1,1,6},{2,6,2},{6,3,3},{7,4,4},{5,7,5},{1,1,7},{3,3,8,},{2,8,2},{8,1,1,},{2,5,2}}

#include <stdio.h>


int main()

{

    int a[10] = {1,2,6,7,5,1,3,2,8,2},b[10] = {1,6,3,4,7,1,3,8,1,5},c[10] = {6,2,3,4,5,7,8,2,1,2},d[10][3],i,j;

    for(i=0;i<10;++i)

    {

        d[i][0]=a[i];

        d[i][1]=b[i];

        d[i][2]=c[i];

    }

    for(i=0;i<10;++i)

    {

        for(j=0;j<3;++j)

        {

            printf("%d ",d[i][j]);

        }

        printf("\n");

    }

    return 0;

}

请点击输入图片描述

请点击输入图片描述


温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-12-18
最简单暴力的方法就是使用循环来进行相对应的赋值。新建一个二维数组,然后通过for循环或者while来进行取数赋值。
第2个回答  2021-12-17
像这样三个等长的数组把,把他们按照下标的顺序依次合并到同一个数组中,还是比较方便的。可以用一个指向整数的指针,初始化为指向目标数组的首元素,然后使用一个循环循环10次,在循环体重中一次循环,把三个元素的值依次复制到目标数组中,每复制一个元素,目标数组的指针就后移一位。
相似回答