23-2다음 C 프로그램을 실행했을 때 출력되는 내용을 적으시오.#in… | 2023년 정보처리기사실기 2회차 기출문제 상세 페이지
8
23-2
다음 C 프로그램을 실행했을 때 출력되는 내용을 적으시오.
#include <stdio.h>
int main(void) {
int s[4] = {68, 91, 77, 84};
int j, total = 0;
for (j = 0; j < 4; j++)
total += s[j];
switch (total / 40) {
case 10:
case 9:
printf("P");
case 8:
case 7:
printf("Q");
case 6:
printf("R");
break;
default:
printf("S");
}
return 0;
}해설
QR
[해설]
네 점수의 합은 68+91+77+84=320이고, 320/40=8이므로 case 8부터 실행이 시작된다.
case 8에는 문장이 없어 아래 case 7로 그대로 내려가 "Q"를 찍는다. break가 없으니 case 6의 "R"까지 이어서 실행한 뒤 break에서 멈춘다.
따라서 출력은 QR이다. break를 만날 때까지 다음 case로 계속 흘러가는 폴스루(fall-through)가 이 문제의 핵심이다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.