검색어 입력폼

Power C++ 천인국, Chapter06.포인터와 문자열 294p 프로그래밍 5번

저작시기 2011.10 |등록일 2013.05.08 | 최종수정일 2015.02.05 한글파일한글 (hwp) | 4페이지 | 가격 700원

목차

1. 코드 작성
2. 결과값 출력
3. 코드 설명

본문내용

코드 설명 및 고찰)
- 코드 설명
배열 원소들의 순서를 반대로 하는 코드이다.
먼저, main()함수에서 기호상수 volume을 크기로 하는 배열 word를 선언하고 배열의 각 원소에 값을 저장한다. 그 후, print_original(word, volume), reverse(word, volume), print_change(word, volume)의 순서대로 함수들을 호출한다.
함수 void print_original 는 매개변수를 포인터 *A와 정수 n으로 하는 순서가 바뀌기 전의 배열의 값을 출력하는 함수이다. for문을 이용하여 배열의 원소에 저장된 값을 순서대로 출력하는 반복문을 작성한다.
작동 원리를 살펴보면, n = volume = 10이므로,
i = 1 일 때, A[0] = 1 이므로 1이 출력된다.
i = 2 일 때, A[1] = 3 이므로 3이 출력된다.
i = 3, 4, … , 9가 될 때까지 위와 같은 과정을 반복한다.
i = 10 일 때, 조건식을 만족하지 않으므로 개행문을 한 번 출력하고 난 뒤, 함수가 종료된다.
함수 reverse 는 매개변수를 포인터 *A와 정수 n으로 하는 배열의 순서를 바꾸는 함수이다. 순서 바꾸기에 필요한 임시로 값을 저장할 변수 temp를 선언하고 for문을 이용하여 순서를 거꾸로 바꾸는 반복문을 작성한다. 반복문의 조건식에서 i < n/2 인 이유는, 배열의 중간지점까지만 반복문을 진행해야 모든 숫자들의 순서가 거꾸로 바뀌기 때문이다. 글로 설명하기 어려운 부분이므로 예를 들어 설명하면,
i = 0 일 때, 임시 저장변수 temp = A[0] 인데 A[0] = 1 이므로 temp = 1 이 된다. 그리고 A[0] = A[10-0-1] = A[9] 인데 A[9] = 0 이므로 A[0] = 0이 새롭게 저장된다. 마지막으로 A[10-0-1] = A[9] = temp 인데 temp = 1 이므로 A[9] = 1 이 된다.

참고 자료

없음
다운로드 맨위로