Larik (Array) Multi Dimensi

Teori

Larik multi-dimensi merupakan larik yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian larik sama saja dengan larik dimensi satu maupun larik dimensi dua.

Pendeklarasian

Pendeklarasian larik 2 dimensi mempunyai pola tipeVariabel namaVariabel[ukuran1] [ukuran2]. Contohnya:

int matriksA[3][4];
float matrikB[4][4];

Pendeklarasian larik 3 dimensi mempunyai pola tipeVariabel namaVariabel[ukuran1] [ukuran2] [ukuran3]. Contohnya:

int matriksA[3][4][2];
float matrikB[4][4][2];

Pengisian Larik Multidimensi

Pengisian larik saat deklarasi

int larik2D[5][2]={{1,12},{2,22},{3,33},{4,44},{5,55}};

Pengisian setelah deklarasi

int larik2D[5][2]; 
larik2D[0][0]=1; 
larik2D[0][1]=2; 
larik2D[1][0]=2; 
larik2D[1][1]=22;
...

Menampilkan Larik Multi Dimensi

Berikut ini contoh menampilkan larik multidimensi:

Kode Menampilkan Larik 2 Dimensi

#include <stdio.h>
main(){
    int array2D[5][2]={{1,12},{2,22},{3,33},{4,44},{5,55}};
    int i,j;
    printf("array2D[%d][%d] =  %dn",0,0,array2D[0][0]);
    printf("array2D[%d][%d] =  %dn",0,1,array2D[0][1]);
    printf("array2D[%d][%d] =  %dn",1,0,array2D[1][0]);
    printf("array2D[%d][%d] =  %dn",1,1,array2D[1][1]);
    printf("array2D[%d][%d] =  %dn",2,0,array2D[2][0]);
    printf("array2D[%d][%d] =  %dn",2,1,array2D[2][1]);
    printf("array2D[%d][%d] =  %dn",3,0,array2D[3][0]);
    printf("array2D[%d][%d] =  %dn",3,1,array2D[3][1]);
    printf("array2D[%d][%d] =  %dn",4,0,array2D[4][0]);
    printf("array2D[%d][%d] =  %dn",4,1,array2D[4][1]);
}

Kode Menampilkan Larik 2 Dimensi Dengan Perulangan

#include <stdio.h>

main(){
    int array2D[5][2]={{1,12},{2,22},{3,33},{4,44},{5,55}};
    int i,j;

    for(i=0;i<5;i++){
        for(j=0;j<2;j++){
            printf("array2D[%d][%d] =  %dn",i,j,array2D[i][j]);
        }
    }
    printf("n");
    for(i=0;i<5;i++){
        for(j=0;j<2;j++){
            printf("%d ",array2D[i][j]);
        }
        printf("n");
    }
    printf("n");
    i=0;
    while(i<5){
        j=0;
        while(j<2){
            printf("%d ",array2D[i][j]);
            j++;
        }
        i++;
        printf("n");
    }
}