합격 후기 작성하고 2,000원 쿠폰 받아가세요! (게시글 탭 → 합격후기)

정보처리기사 필기프로그래밍 언어 활용C언어 배열 포인터난이도 2MCQ

정보처리기사 필기 C언어 배열 포인터 기출문제 #11869

문제

다음 C언어 프로그램이 실행되었을 때의 결과는?

① 55 ② 77 ③ 121 ④ 132

정답

3

해설

정답: 3. 2차원 배열 a는 메모리에 11, 22, 44, 55 순으로 연속 저장된다. p = a[0]은 첫 원소(11)를 가리키므로 *(p+1)=22, *(p+2)=44, *(p+3)=55이다. i가 1부터 3까지 sum에 더하면 22 + 44 + 55 = 121이 되어 121이 출력된다.

오답 풀이

  • 1번: 55는 마지막 원소 하나의 값으로 합이 아니다.
  • 2번: 77은 *(p+0)부터 잘못 더한 값이다.
  • 3번: 22 + 44 + 55 = 121이므로 정답이다.
  • 4번: 132는 11 + 22 + 44 + 55에서 일부를 잘못 계산한 값이다.

보충 개념 2차원 배열은 행 우선(row-major)으로 연속 저장되며, 포인터 p에 정수를 더하면 원소 단위로 이동한다. *(p+i)는 a를 1차원으로 펼쳤을 때의 i번째 원소이다.

정보처리기사 필기 프로그래밍 언어 활용 다른 기출문제

정보처리기사 필기 시험 준비 가이드

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

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

[정보처리기사 필기] C언어 배열 포인터 프로그래밍 언어 활용 기출 #11869 | 문어CBT