정보처리기사 실기C언어C - 구조체 배열과 typedef난이도 2SHORT_ANSWER

정보처리기사 실기 C - 구조체 배열과 typedef 기출문제 #523

문제

다음 C 코드의 실행 결과를 쓰시오.

C
#include <stdio.h> typedef struct { int num; int value; } Data; int main() { Data list[4] = {{10, 15}, {20, 25}, {30, 35}, {40, 45}}; Data *ptr = &list[2]; int result = ptr[-1].value + ptr[0].num + ptr[1].value; printf("%d", result); return 0; }

정답

100

100

해설

구조체 배열에서 포인터 ptr이 list[2]를 가리킵니다.

  1. ptr[-1]은 list[1]을 의미하므로 ptr[-1].value = 25
  2. ptr[0]은 list[2]를 의미하므로 ptr[0].num = 30
  3. ptr[1]은 list[3]을 의미하므로 ptr[1].value = 45 따라서 result = 25 + 30 + 45 = 100입니다.

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

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