SQLD소프트웨어 개발난이도 4MCQ

SQLD 소프트웨어 개발 기출문제 #2103

문제

다음 C 코드의 실행 결과로 출력되는 값은?

C
int arr[] = {64, 34, 25, 12, 22, 11, 90}; int n = 7; for(int i = 0; i < n-1; i++) { int min_idx = i; for(int j = i+1; j < n; j++) { if(arr[j] < arr[min_idx]) min_idx = j; } if(min_idx != i) { int temp = arr[i]; arr[i] = arr[min_idx]; arr[min_idx] = temp; } } printf("%d", arr[2]);

① 22 ② 25 ③ 34 ④ 64

정답

1

해설

i=0: j=16에서 최솟값 arr[5]=11, min_idx=5. swap(0,5) → {11, 34, 25, 12, 22, 64, 90} i=1: j=26에서 arr[3]=12가 최소, min_idx=3. swap(1,3) → {11, 12, 25, 34, 22, 64, 90} i=2: j=3~6에서 arr[4]=22가 최소, min_idx=4. swap(2,4) → {11, 12, 22, 34, 25, 64, 90} arr[2] = 22

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] 소프트웨어 개발 기출 #2103 | sqldpass