2021 국가직9급 컴퓨터일반 17번 해설 — C 제어문
정답 ③번출제 쟁점 C 제어문발문 옳은 것 고르기
문제
다음은어느학생이C 언어로작성한학점계산프로그램이다. 출력결과는? #include <stdio.h> int main() { int score = 85; char grade; if (score >= 90) grade='A'; if (score >= 80) grade='B'; if (score >= 70) grade='C'; if (score < 70) grade='F'; printf("학점: %c\n", grade); return 0; }
- ① 학점: A
- ② 학점: B
- ③ 학점: C ← 정답
- ④ 학점: F
선지별 해설
① 학점: A
이 선지 진술은 틀림(X)
85는 score >= 90 조건을 만족하지 않는다. 이후 독립 if문에서 B가 대입된 뒤 C로 다시 대입된다.
② 학점: B
이 선지 진술은 틀림(X)
코드는 else-if가 아니라 독립된 if문을 연속으로 사용한다. score >= 70도 참이므로 grade는 C로 덮어써진다.
③ 학점: C
이 선지 진술은 옳음(O)
score >= 80 조건에서 B가 저장되지만, 이어서 score >= 70 조건도 참이라 C로 덮어써진다. 마지막 70 미만 조건은 거짓이다.
④ 학점: F
이 선지 진술은 틀림(X)
85는 score < 70 조건을 만족하지 않는다. 최종 grade는 앞선 score >= 70 조건에서 대입된 C이다.
핵심 요약 (Q&A)
- Q. 2021 국가직9급 컴퓨터일반 17번의 핵심 쟁점은 무엇인가?
- A. 2021 국가직9급 컴퓨터일반 17번은 C 제어문에 관한 문항으로, "옳은 것"을 고르는 문제입니다.
- Q. 2021 국가직9급 컴퓨터일반 17번의 정답은?
- A. 정답은 ③번입니다. score >= 80 조건에서 B가 저장되지만, 이어서 score >= 70 조건도 참이라 C로 덮어써진다. 마지막 70 미만 조건은 거짓이다.