학습목표
1. 배열을 선언하고 초기화할 수 있다.
2. 배열의 요소를 참조할 수 있다.
3. 배열과 기억공간의 표현을 이해할 수 있다.
4. char형 배열을 이해할 수 있다.
주요용어
배열 : 동일한 자료형의 값들이 순서들
6.1.2. 다차원 배열
(1) 2차원 배열
- 형식 : 자료형 배열명 [ 행의 수 ] [ 열의 수 ] - 사용 예 : int a[3][4]; - 의미 : 배열명이 a 이고 3행 4열로 된 12개의 요소를 가진 정수형 배열이다. |
2차원 배열의 선언과 초기화
int array[3][3] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int array[3][3] = {{ 1, 2, 3}, {4, 5, 6}, {7, 8, 9 }};
int array[3][3] = {{ 1, 2, 3},
{4, 5, 6},
{7, 8, 9 }};
**2차원 배열의 기억공간 표현
#include <stdio.h>
void main(){
static int score[4][3] = {{90, 90, 90}, {80, 80, 80}, {70, 70, 70}, {60, 60, 60}};
// 2차원 배열 선언과 초기화
int sum, i, j;
printf("번호\t국어\t수학\t영어\t합계 \n");
for(i=0; i<4; ++i){
sum = 0;
printf("%3d", i +1);
for(j=0; j <3; j++){
printf("\t%3d", score[i][j]);
sum += score[i][j];
}
printf("\t%3d \n", sum); } }
(2) 3차원 배열
- 형식 : 자료형 배열명 [면의 수] [행의 수] [ 열의 수] - 사용 예 : int a [2][3][4] - 의미 : 3차원 배열로서, 배열명은 a이고 2면 3행 4열로된 24개의 요소를 가진 정수형 배열 |
** 3차원 배열 초기화와 기억공간 표현
int a[2][3][4] = { { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} }, { {13, 14, 15, 16}, {17, 18, 19, 20}, {21, 22, 23, 24} } }
#include <stdio.h>
void main(){
int score[3][3][3]; // 3개 반의 학생 3명 3과목 성적을 체크
int sum[3] = { 0 }; // 국어, 수학, 영어 합계
int a, b, c, d, e, f;
for(c = 0; c < 3; c++){
for(b=0; b < 3; b++){ //학생별 국어, 수학, 영어 점수 입력받음
printf("%d반 %d번 학생의 국어, 수학, 영어 점수 : ", c+1, b+1) ;
scanf("%d %d %d", &score[c][b][0], &score[c][b][1], &score[c][b][2]); }
printf("\n"); }
for(e=0; e <3; e++){
for(d=0; d <3; d++){
for(f=0; f <3; f++){
sum[f] += score[e][d][f]; } } } // 과목별 총 합계를 구함
printf("전체반 9명의 국어 총점 : %d, 평균 : %d \n", sum[0], sum[0] / 9);
printf("전체반 9명의 수학 총점 : %d, 평균 : %d \n", sum[1], sum[1] / 9);
printf("전체반 9명의 영어 총점 : %d, 평균 : %d \n", sum[2], sum[2] / 9); }
'방송통신대학 > C 프로그래밍' 카테고리의 다른 글
배열과 포인터 array, pointer (0) | 2020.06.07 |
---|---|
char형 배열과 문자열 (0) | 2020.06.06 |
1차원 배열 array (0) | 2020.06.04 |
자동, 정적, 외부, 레지스터 변수 variable (0) | 2020.06.03 |
지역변수, 전역변수 variable (0) | 2020.06.02 |