다음은 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);
} ㉠ ㉡
- ①arr[i] > max1 arr[i] > max2 && arr[i] < max1
- ②arr[i] > max1 arr[i] < max2 && arr[i] > max1
- ③arr[i] < max1 arr[i] > max2 && arr[i] < max1
- ④arr[i] < max1 arr[i] < max2 && arr[i] > max1
선지를 골라 바로 채점해 보세요.
정답 ①
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)