C언어에서의 3차원 배열 이해하기: 삼차원배열데모.c 분석

  • 3 minutes to read

안녕하세요, 여러분! 오늘은 C언어에서의 3차원 배열에 대해 이야기해보려고 합니다. 3차원 배열은 말 그대로 3개의 차원을 갖는 배열입니다. 그럼 함께 소스코드를 통해 알아봅시다.

코드: 삼차원배열데모.c

// 3차원 배열 : 층*행*열 : int kor[2][2][2] : 2 * 2 * 2 = 8
#include <stdio.h>

int main(void)
{
	int i, j, k = 0;

	//// 3차원 배열 선언
	//int num[2][2][2];

	//num[0][0][0] = 1;
	//num[0][0][1] = 2;
	//num[0][1][0] = 3;
	//num[0][1][1] = 4;

	//num[1][0][0] = 5;
	//num[1][0][1] = 6;
	//num[1][1][0] = 7;
	//num[1][1][1] = 8;

	int num[2][2][2] = { {{1, 2}, {3, 4}}, {{5, 6}, {7, 8}} };

	for (i = 0; i < 2; i++)						// 층 반복
	{
		for (j = 0; j < 2; j++)					// 행 반복
		{
			for (k = 0; k < 2; k++)				// 열 반복
			{
				printf("%d\t", num[i][j][k]);
			}
			printf("\n");
		}
		printf("\n");
	}

	return 0;
}

1. 3차원 배열이란?

3차원 배열은 층, 행, 열의 3개의 차원을 가집니다. 일반적인 2차원 배열은 행렬처럼 두 개의 차원만을 가지지만, 3차원 배열은 그보다 한 차원 더 높은 배열입니다.

예:

int kor[2][2][2]
  • 이 배열은 2 * 2 * 2 = 8개의 요소를 갖습니다.

2. 배열 선언과 초기화

먼저 소스코드에서 3차원 배열을 선언하는 부분입니다.

int num[2][2][2] = { {{1, 2}, {3, 4}}, {{5, 6}, {7, 8}} };

이 코드는 다음과 같이 생각할 수 있습니다:

  • 첫 번째 층: {{1, 2}, {3, 4}}
  • 두 번째 층: {{5, 6}, {7, 8}}

그렇다면 첫 번째 층의 첫 번째 행의 첫 번째 열의 값은 num[0][0][0]이 되며, 이는 1입니다.

3. 배열의 요소에 접근하기

소스코드에는 층, 행, 열을 순회하는 for 반복문이 있습니다. 이를 통해 각 요소에 접근할 수 있습니다.

for (i = 0; i < 2; i++) // 층 반복
{
	for (j = 0; j < 2; j++) // 행 반복
	{
		for (k = 0; k < 2; k++) // 열 반복
		{
			printf("%d\t", num[i][j][k]);
		}
		printf("\n");
	}
	printf("\n");
}

4. 결론

3차원 배열은 처음에는 복잡해 보일 수 있지만, 각 차원을 잘 이해하고 for 문을 활용하면 쉽게 요소에 접근하고 값을 변경할 수 있습니다. 기본적인 원리를 이해하면, 더 복잡한 다차원 배열에도 적응할 수 있을 것입니다!

다음에는 더 다양한 다차원 배열 예제와 활용 방법에 대해 알아보도록 하겠습니다. 재미있는 코딩 되세요! 🚀👩‍💻👨‍💻

더 깊이 공부하고 싶다면
DevLec에서는 실무 중심의 C#, .NET, ASP.NET Core, Blazor, 데이터 액세스 강좌를 단계별로 제공합니다. 현재 수강 가능한 강좌 외에도 더 많은 과정이 준비되어 있습니다.
DevLec.com에서 자세한 커리큘럼을 확인해 보세요.
DevLec 공식 강의
C# Programming
C# 프로그래밍 입문
프로그래밍을 처음 시작하는 입문자를 위한 C# 기본기 완성 과정입니다.
ASP.NET Core 10.0
ASP.NET Core 10.0 시작하기 MVC Fundamentals Part 1 MVC Fundamentals Part 2
웹 애플리케이션의 구조와 MVC 패턴을 ASP.NET Core로 실습하며 익힐 수 있습니다.
Blazor Server
풀스택 웹개발자 과정 Part 1 풀스택 웹개발자 과정 Part 2 풀스택 웹개발자 과정 Part 3
실무에서 바로 활용 가능한 Blazor Server 기반 관리자·포털 프로젝트를 만들어 봅니다.
Data & APIs
Entity Framework Core 시작하기 ADO.NET Fundamentals Blazor Server Fundamentals Minimal APIs
데이터 액세스와 Web API를 함께 이해하면 실무 .NET 백엔드 개발에 큰 도움이 됩니다.
VisualAcademy Docs의 모든 콘텐츠, 이미지, 동영상의 저작권은 박용준에게 있습니다. 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 복제를 금합니다. 사이트의 콘텐츠를 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다. 단, 링크와 SNS 공유, Youtube 동영상 공유는 허용합니다. www.VisualAcademy.com
박용준 강사의 모든 동영상 강의는 데브렉에서 독점으로 제공됩니다. www.devlec.com