SQLD프로그래밍 언어 활용C 반복문난이도 2MCQ

SQLD C 반복문 기출문제 #4082

문제

아래 C 코드의 for문을 while문으로 올바르게 변환한 것은 무엇인가?

C
for(i=0; i<10; i++){ sum += i; }

① while(i<10){ i=0; i++; sum+=i; } ② i=0; while(i<10){ i++; sum+=i; } ③ i=0; while(i<10){ sum+=i; i++; } ④ while(i<10){ i=0; sum+=i; i++; }

정답

3

해설

정답: 3. for문의 초기식은 반복문 전에, 증감식은 반복문 본문 실행 후에 수행되어야 한다.

오답 풀이

  • 1번: 반복문 내부에서 매번 i를 0으로 초기화해 무한 반복 위험이 있다.
  • 2번: i를 더하기 전에 증가시키므로 더하는 값의 순서가 달라진다.
  • 3번: i=0으로 초기화 후 sum에 더하고 마지막에 i++를 수행하므로 원래 for문과 같다.
  • 4번: 반복문 내부에서 i를 계속 0으로 초기화해 부적절하다.

보충 개념 for(초기식; 조건식; 증감식){본문}초기식; while(조건식){본문; 증감식;}으로 변환할 수 있다.

SQLD 시험 준비 가이드

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

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

[SQLD] C 반복문 프로그래밍 언어 활용 기출 #4082 | 문어CBT