[7급 국가직 자료구조론 2020년 19번]

다음은 1차원 배열 arr에서 두 번째로 큰 수를 찾는 C 언어 함수이다. ㉠, ㉡에 들어갈 내용을 바르게 연결한 것은? (단, 배열 arr의 모든 원소는 서로 다른 양의 정수이고, n은 배열의 크기이며 2보다 크거나 같다)
void Largest2nd(int *arr, int n){
	int i, max1 = 0, max2 = 0;

	for (i = 0; i < n; i++){
		if (    ㉠    ){
			max2 = max1;
			max1 = arr[i];
		}
		else if (      ㉡       )
			max2 = arr[i];
	}

	printf("Second Largest Number = %d\n", max2);
}
㉠ ㉡
자료구조론
  1. ①arr[i] > max1 arr[i] > max2 && arr[i] < max1
  2. ②arr[i] > max1 arr[i] < max2 && arr[i] > max1
  3. ③arr[i] < max1 arr[i] > max2 && arr[i] < max1
  4. ④arr[i] < max1 arr[i] < max2 && arr[i] > max1

선지를 골라 바로 채점해 보세요.

정답 ①

출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)

신고가 접수됐습니다. 감사합니다.

오류 신고