一维数组转化为二维数组

#include <stdio.h>
int main()
{    int i,j,k=0,arr[5]={0,1,2,3},arr2[2][2]={0};
     for(i=0;i<2;i++)
        for(j=0;j<2;j++)
            {
            arr2[i][j]=arr[k];
            k++;
            }
    return 0;
}

1. 这里通过引入第三个变量将一维数组的值挨个赋值给二维数组,实现一维到二维的转化。

 

 

 

#include <stdio.h>
int main()
{    int i,arr[4]={0,1,2,3},arr2[2][2]={0};
     for(i=0;i<5;i++)
        arr2[0][i]=arr[i];
     
    return 0;
}

2.利用定义的二维数组的边界条件,通过一次循环实现一维数组向二维数组的转换。

 

 

 

 

#include <stdio.h>
int main()
{
    int i,arr[4]={0,1,2,3},arr2[2][2]={0};
    for(i=0;i<4;i++)
        arr[i/2][i%2]=arr[i];

    return 0;
}

 3.通过运算,利用一次循环的i值,确定被赋值的二维数组的下标,从而实现一维数组向二维数组的转化。