다차원 배열
Coddy C 여정의 Fundamentals 섹션에 포함된 레슨 — 63개 중 56번째.
다차원 배열은 배열의 배열입니다. C 언어에서는 행과 열이 있는 테이블 형태인 2차원 배열(가장 일반적인 다차원 배열)을 생성할 수 있습니다.
2차원 배열을 선언합니다:
int matrix[3][4];이것은 3개의 행과 4개의 열을 가진 2차원 배열을 생성합니다.
2차원 배열을 선언할 때 초기화할 수 있습니다:
int matrix[3][4] = {
{1, 2, 3, 4}, // 첫 번째 행
{5, 6, 7, 8}, // 두 번째 행
{9, 10, 11, 12} // 세 번째 행
};2차원 배열의 요소에 접근하려면 두 개의 인덱스를 사용합니다:
int value = matrix[1][2]; // 1행 2열에 접근합니다 (값은 7이 됩니다)2차원 배열의 요소를 수정하려면:
matrix[0][3] = 100; // 0행 3열의 요소를 100으로 변경합니다중첩 루프를 사용하여 2차원 배열의 모든 요소에 액세스할 수도 있습니다:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n"); // 각 행이 끝난 후 줄바꿈
}챌린지
쉬움2차원 정사각형 배열(행의 수와 열의 수가 같은 배열)을 입력받아 주 대각선(왼쪽 위에서 오른쪽 아래로)에 있는 요소들을 출력하는 printDiagonal이라는 함수를 작성하세요.
함수의 요구 사항은 다음과 같습니다:
- 정수 배열과 그 크기를 매개변수로 받습니다.
- 주 대각선(행 인덱스와 열 인덱스가 같은 위치)에 있는 각 요소를 출력합니다.
- 각 요소는 공백으로 구분하여 출력합니다.
예를 들어, 다음과 같은 배열이 주어졌을 때:
1 2 3 4 5 6 7 8 9
함수는 다음과 같이 출력해야 합니다: 1 5 9
치트 시트
다차원 배열은 배열의 배열입니다. C 언어에서는 행과 열이 있는 2차원 배열을 만들 수 있습니다.
2차원 배열 선언하기:
int matrix[3][4];선언 시 2차원 배열 초기화하기:
int matrix[3][4] = {
{1, 2, 3, 4}, // 첫 번째 행
{5, 6, 7, 8}, // 두 번째 행
{9, 10, 11, 12} // 세 번째 행
};두 개의 인덱스를 사용하여 요소에 접근하기:
int value = matrix[1][2]; // 1행 2열에 접근 (값은 7이 됨)요소 수정하기:
matrix[0][3] = 100; // 0행 3열의 요소를 100으로 변경중첩 루프를 사용하여 모든 요소에 접근하기:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n"); // 각 행이 끝난 후 줄바꿈
}직접 해보기
#include <stdio.h>
// 정사각 행렬의 대각선 요소를 출력하는 함수
void printDiagonal(int matrix[][100], int size) {
// 여기에 코드를 작성하세요
}
int main() {
int size;
scanf("%d", &size);
int matrix[100][100];
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
scanf("%d", &matrix[i][j]);
}
}
printDiagonal(matrix, size);
return 0;
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.