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

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

문제

다음 C 코드의 실행 결과로 가장 적절한 것은?

C
#include <stdio.h> int main() { int stack[5] = {0}; int top = -1; stack[++top] = 10; stack[++top] = 20; stack[++top] = 30; printf("%d ", stack[top--]); stack[++top] = 40; printf("%d ", stack[top]); return 0; }

① 30 30 ② 30 40 ③ 20 40 ④ 30 20

정답

2

해설

스택에 10, 20, 30이 순서대로 push되어 top=2가 된다. 첫 번째 printf에서 stack[2]=30을 출력 후 top이 1로 감소한다. 그 다음 stack[++top]에서 top이 다시 2가 되어 stack[2]=40이 저장되고, 두 번째 printf에서 40이 출력된다. 따라서 출력 결과는 '30 40'이다.

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

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

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