본문 바로가기

C

[C언어] 다차원 배열(Multi-Demetional Arrays)

반응형

 

 

 

토글

 

 


1. 다차원 배열의 개념과 선언

- 다차원 배열은 2차원 이상의 배열로, 배열을 행과 열로 구성하여 데이터를 저장한다. 

- C 언어에서는 대괄호([])를 여러 번 사용하여 다차원 배열을 선언할 수 있다.

- 간단히 말하면 '배열의 배열'이라고 할 수 있다. 

 

int arr2[2][5]; // 2행 5열의 2차원 배열
int arr3[3][2][3]; // 3면 2행 3열의 3차원 배열

 

 

- 위와 같이 2차원 배열은 행과 열의 크기를 지정하고, 3차원 배열은 면, 행, 열의 크기를 지정하여 선언할 수 있다.

 

 

 


 

2. 다차원 배열의 초기화

- 다차원 배열도 초기화를 할 수 있다.

- 2차원 배열의 경우 중괄호({}) 안에 초기값을 나열하여 각 요소에 할당할 수 있다.
 

  int arr2[2][5] = {
       {1, 2, 3, 4, 5},
       {1, 2, 3, 4, 5}
   };

 

 

 

3차원 배열도 마찬가지로 중괄호({}) 안에 초기값을 나열하여 요소에 할당할 수 있다.

  int arr3[3][2][3] = {
       {
           {3, 2, 3},
           {3, 2, 3}
       },
       {
           {3, 2, 3},
           {3, 2, 3}
       },
       {
           {3, 2, 3},
           {3, 2, 3}
       }
   };

 

 

 


 


3. 다차원 배열의 값 출력

- 다차원 배열의 요소에 접근할 때는 인덱스를 사용한다.

- 반복문을 활용하여 다차원 배열의 모든 요소를 출력할 수 있다.

반응형

2차원 배열

 int arr2[2][5] = {
       {1, 2, 3, 4, 5},
       {1, 2, 3, 4, 5}
   };
   for (int i = 0; i < 2; i++) {
       for (int j = 0; j < 5; j++) {
           printf("2차원 배열(%d, %d)의 값: %d\n", i, j, arr2[i][j]);
       }
   }

2차원 배열의 구조의 구성을 살펴보면

ㅁㅁㅁㅁㅁ
ㅁㅁㅁㅁㅁ
[0,0][0,1][0,2][0,3][0,4]  ex) arr2[0][2]
[1,0][1,1][1,2][1,3][1,4]  ex) arr2[1][4]

 



3차원 배열

3차원 배열도 중첩된 반복문을 사용하여 모든 요소에 접근할 수 있다.

 int arr3[3][2][3] = {
       // 배열 초기화 생략
   };
   for (int i = 0; i < 3; i++) {
       for (int j = 0; j < 2; j++) {
           for (int k = 0; k < 3; k++) {
               printf("3차원 배열(%d, %d, %d)의 값: %d\n", i, j, k, arr3[i][j][k]);
           }
       }
   }

3차원 배열의 구조를 살펴보면

ㅁㅁㅁ   [0,0,0][0,0,1][0,0,2]
ㅁㅁㅁ   [0,1,0][0,1,1][0,1,2]

ㅁㅁㅁ   [1,0,0][1,0,1][1,0,2]
ㅁㅁㅁ   [1,1,0][1,1,1][1,1,2]

ㅁㅁㅁ   [2,0,0][2,0,1][2,0,2]
ㅁㅁㅁ   [2,1,0][2,1,1][2,1,2]

 

 

 

 

 

반응형