SQLD프로그래밍 언어 활용C 문자열난이도 4MCQ

SQLD C 문자열 기출문제 #4584

문제

다음 C언어 프로그램의 실행 결과로 알맞은 것은?

C
#include <stdio.h> #include <string.h> int main() { char s1[10] = "ABC"; char s2[10] = "DEF"; char *p1 = s1, *p2 = s2; char temp = *(p1 + 1); *(p1 + 1) = *(p2 + 1); *(p2 + 1) = temp; strcat(s1, s2); printf("%s", s1); return 0; }

① DBFAEC ② ABCDEF ③ AECDBF ④ ADCFFB

정답

3

해설

정답: 3. s1의 두 번째 문자 B와 s2의 두 번째 문자 E를 교환하면 s1은 AEC, s2는 DBF가 되며, strcat으로 이어 붙이면 AECDBF가 된다.

오답 풀이

  • 1번: 문자열 결합 전후의 순서를 잘못 추적한 결과이다.
  • 2번: 문자 교환이 반영되지 않은 결과이다.
  • 3번: 교환 후 s1과 s2를 이어 붙인 결과와 일치한다.
  • 4번: s2의 문자 상태를 잘못 계산한 결과이다.

보충 개념 문자 배열과 포인터 문제는 각 문자의 위치 변화를 단계별로 추적하는 것이 좋다.

SQLD 시험 준비 가이드

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

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

[SQLD] C 문자열 프로그래밍 언어 활용 기출 #4584 | 문어CBT