Page 162 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 162
실습 4C-1의 1 에서는 입력한 값을 a[cnt++ % N]에 저장합니다. 입력한 값이 어떤 과정으로 배열
요소에 저장되는지 자세히 살펴보겠습니다.
1. 1번째 값 입력하기
cnt는 0이고 10으로 나눈 나머지는 0입니다. 입력한 값은 a[0]에 저장됩니다.
2. 2번째 값 입력하기
cnt는 1이고 10으로 나눈 나머지는 1입니다. 입력한 값은 a[1]에 저장됩니다.
실행 결과
정수를 입력하세요.
1번째 정수 : 15
9 0
55 97 계속할까요?(Yes … 1/No … 0) : 1
8 1 2번째의 정수 : 17
44 85
계속할까요?(Yes … 1/No … 0) : 1
7
23 64 2 … 중략 …
12번째 정수 : 85
0 57
6 3 계속할까요?(Yes … 1/No … 0) : 0
21 99
5 4 3번째의 정수 = 64
4번째의 정수 = 57
5번째의 정수 = 99
※원 안쪽의 숫자 … 요소의 인덱스
안의 숫자 … n번째로 입력한 값 … 중략 …
10번째의 정수 = 55
11번째의 정수 = 97
12번째의 정수 = 85
[그림 4C-1] 링 버퍼에 값 입력하기
3. 3번째 값 입력하기
cnt는 2이고 10으로 나눈 나머지는 2입니다. 입력한 수는 a[2]에 저장됩니다.
… 중략 …
4. 11번째 값 입력하기
cnt는 10이고 10으로 나눈 나머지는 0입니다. 입력한 수는 a[0]에 저장됩니다. 1번째 위치의 데이터
를 11번째 데이터가 덮어씁니다.
5. 12번째 값 입력하기
cnt는 11이고 10으로 나눈 나머지는 1입니다. 입력한 수는 a[1]에 저장됩니다. 2번째 위치의 데이터
를 12번째 데이터가 덮어씁니다.
162 C 알고리즘