數據結構複習第三章:動態數組

#include<stdio.h>
#include<stdlib.h>

int main()
{
    int i,j,k;
    int n1,n2,n3;
    
    int ***arr = NULL;
    scanf("%d %d %d",&n1,&n2,&n3);

    arr = (int ***)calloc(n1,sizeof(int **));

    for(i = 0;i < n1;i++)
    {
        arr[i] = (int **)calloc(n2,sizeof(int*));

        for(j = 0;j < n2;j++)
        {
            arr[i][j] = (int*)calloc(n3,sizeof(int));

            for(k = 0;k<n3;k++)
            {
                arr[i][j][k] = i+j+k+1;

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


    for(i=0;i<n1;i++)
    {
        for(j=0;j<n2;j++)
        {
            free(array[i][j]);//釋放第三維指針
        }
    }

    for(i=0;i<n1;i++)
    {
        free(array[i]);//釋放第二維指針
    }
    free(array);//釋放第一維指針

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章