Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C언어 다차원 배열 완벽 정리: 개념부터 예제 코드까지

C언어는 3차원 이상의 배열을 지원하며, 이를 다차원 배열(multidimensional array)이라고 합니다. 배열이 가질 수 있는 차원 수의 정확한 상한은 사용하는 컴파일러에 따라 달라집니다.

다차원 배열 선언 문법

다차원 배열의 기본 선언 형식은 다음과 같습니다.

데이터타입 배열이름 [크기1] [크기2] ----- [크기n];

예를 들어, 3차원 배열을 선언하려면 다음과 같이 작성합니다.

int a[3][3][3];

이 배열에 저장할 수 있는 요소의 총 개수는 각 차원 크기를 곱하여 계산합니다.

요소 개수 = 3 × 3 × 3 = 27개

다차원 배열 예제 프로그램

다음은 3차원 배열을 선언하고 중첩 반복문을 사용해 모든 요소를 출력하는 C 프로그램입니다.

#include<stdio.h>
main() {
    int a[2][2][2] = {1, 2, 3, 4, 5, 6, 7, 8};
    int i, j, k;
    printf("배열의 요소들은 다음과 같습니다 :\n");
    for (i = 0; i < 2; i++) {
        for (j = 0; j < 2; j++) {
            for (k = 0; k < 2; k++) {
                printf("%d ", a[i][j][k]);
            }
        }
    }
}

코드 설명

  • int a[2][2][2]: 각 차원마다 크기가 2인 3차원 배열을 선언하고, 총 8개의 값으로 초기화합니다.
  • 중첩 for문: 세 개의 인덱스(i, j, k)를 순회하면서 배열의 모든 요소에 차례로 접근합니다.

실행 결과

위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.

배열의 요소들은 다음과 같습니다 :
1 2 3 4 5 6 7 8

정리

다차원 배열은 행렬, 이미지 데이터, 3차원 좌표 등 복잡한 구조의 데이터를 표현할 때 유용하게 활용됩니다. 차원이 늘어날수록 필요한 반복문의 개수도 함께 증가하므로, 인덱스 범위를 벗어나지 않도록 주의하는 것이 중요합니다.