Download presentation
Presentation is loading. Please wait.
1
11장. 1차원 배열
2
11-1 배열이란 무엇인가? 둘 이상의 변수를 동시에 선언하는 효과를 지닌다. 많은 양의 데이터를 일괄적으로 처리해야 하는 경우에 유용하다. 지역적 특성을 지닐 수도 있고, 전역적 특성을 지닐 수도 있다.
3
11-2 1차원 배열의 선언 및 초기화 배열 선언에 있어서 필요한 것 세 가지
차원 배열의 선언 및 초기화 배열 선언에 있어서 필요한 것 세 가지 배열 길이 : 배열을 구성하는 변수의 개수 (반드시 상수를 사용) 배열 요소 자료형 : 배열을 구성하는 변수의 자료형 배열 이름 : 배열에 접근할 때 사용되는 이름 그림 11-1
4
11-2 1차원 배열의 선언 및 초기화 1차원 배열의 접근 배열 요소의 위치를 표현 : 인덱스(index)
차원 배열의 선언 및 초기화 1차원 배열의 접근 배열 요소의 위치를 표현 : 인덱스(index) 인덱스는 0에서부터 시작 그림 11-2
5
11-2 1차원 배열의 선언 및 초기화 배열 선언과 접근의 예(array1.c 참조) 그림 11-3 int main(void)
차원 배열의 선언 및 초기화 배열 선언과 접근의 예(array1.c 참조) int main(void) { int array[10]; // 배열 선언 array[0]=10; // 첫 번째 요소 접근 array[1]=20; // 두 번째 요소 접근 array[2]=30; // 세 번째 요소 접근 return 0; } 그림 11-3
6
11-2 1차원 배열의 선언 및 초기화 /* array1.c */ #include <stdio.h>
차원 배열의 선언 및 초기화 /* array1.c */ #include <stdio.h> int main(void) { double total; double val[5]; val[0]=1.01; val[1]=2.02; val[2]=3.03; val[3]=4.04; val[4]=5.05; total=val[0]+val[1]+val[2]+val[3]+val[4]; printf("평균 : %lf \n", total/5); return 0; }
7
11-2 1차원 배열의 선언 및 초기화 선언과 동시에 초기화(array2.c 참조) 그림 11-4 int main(void)
차원 배열의 선언 및 초기화 선언과 동시에 초기화(array2.c 참조) int main(void) { int arr1[5]={1, 2, 3, 4, 5}; int arr2[ ]={1, 3, 5, 7, 9}; int arr3[5]={1, 2} } 그림 11-4
8
차원 배열의 선언 및 초기화 그림 11-5 그림 11-6
9
11-3 배열 기반 문자열 변수 문자열 상수 문자열 변수(ar_str.c 참조) 문자열이면서 상수의 특징을 지닌다.
11-3 배열 기반 문자열 변수 문자열 상수 문자열이면서 상수의 특징을 지닌다. 문자열 변수(ar_str.c 참조) 문자열이면서 변수의 특징을 지닌다. printf("Hello World! \n"); char str1[5]="Good"; char str2[]="morning";
10
/* ar_str.c */ #include <stdio.h> int main(void) { char str1[5]="Good"; char str2[]="morning"; printf("%s \n", str1); printf("%s %s \n ", str1, str2); return 0; }
11
11-3 배열 기반 문자열 변수 문자열의 특징 문자열은 널(null)문자를 끝에 지닌다.
11-3 배열 기반 문자열 변수 문자열의 특징 문자열은 널(null)문자를 끝에 지닌다. 널(null) 문자 : '\0'(아스키 코드 값으로 0) int main(void) { char str[6]="Hello"; printf("Hello"); 그림 11-7
12
11-3 배열 기반 문자열 변수 널(null) 문자를 지녀야 하는 이유 문자열의 끝을 표현하기 위해서
11-3 배열 기반 문자열 변수 널(null) 문자를 지녀야 하는 이유 문자열의 끝을 표현하기 위해서 쓰레기 값과 실제 문자열의 경계를 나타내기 위해 printf 함수는 널 문자를 통해서 출력의 범위를 결정 짓는다. int main(void) { char str[100]=”Hello World!”; printf(“%s \n”, str);
13
11-3 배열 기반 문자열 변수 문자열 변수를 활용한 다양한 예제 문자열과 char형 배열의 차이점
11-3 배열 기반 문자열 변수 문자열 변수를 활용한 다양한 예제 va_str.c : 문자열 변수의 데이터 조작 scanf_str.c : 문자열 변수를 통한 문자열의 입력 문자열과 char형 배열의 차이점 char arr1[ ] = "abc"; char arr2[ ] = {'a', 'b', 'c'}; char arr3[ ] = {'a', 'b', 'c', '\0'};
14
11-3 배열 기반 문자열 변수 /* va_str.c */ #include <stdio.h>
11-3 배열 기반 문자열 변수 /* va_str.c */ #include <stdio.h> int main(void) { int i; char ch; char str[6]="Hello"; printf("--변경 전 문자열--\n"); printf("%s \n", str); for(i=0; i<6; i++) printf("%c | ", str[i]); /* 문자열 변경 */ for(i=0; i<3; i++) ch=str[4-i]; str[4-i]=str[i]; str[i]=ch; } printf("\n\n--변경 후 문자열--\n"); return 0;
Similar presentations