inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

(기출) 2024년 1회 코드해석 문제

16분29초 마지막 프린트문에 "변환된 문자열 : %\n", result 인데 개행을 해야 하는거 아닌가요?

해결된 질문

150

51god51

작성한 질문수 1

0

시저암호 문제인제

마지막에 개행하라는 것이 보여서 그럼 답이

N

d

 

s

c

 

1

 

아닌가요?

python java c 정보처리기사

답변 1

0

주말코딩

아닙니다. 전부 일자로 붙어서 출력되어야 합니다.

 

지금 반복문을 잘 보실 필요가 있습니다.

위의 알고리듬은 어쨌든 간에 최종 결과물은 result[i]에 누적하고 있습니다.

i를 0부터 1씩 증가시켜보겠습니다.

result[0] = 뭔가 --- result라는 배열의 첫 번째 요소에 뭔가를 넣는다.

result[1] = 뭔가 --- result라는 배열의 두 번째 요소에 뭔가를 넣는다.

result[n] = 뭔가 --- result라는 배열의 n+1번째 요소에 뭔가를 넣는다.

이렇게 끝까지 가게 되면, 결국 result라는 하나의 온전한 배열이 만들어집니다.

( 지금 처음에 result[100]을 선언해두었으니 100에 해당하는 빈칸에 넣는 것입니다. )

 

for문은 p[i]가 null이 아닐 때까지 돕니다. 거짓이 되려면 p[i]가 null이 되는 순간에 끝납니다. (false)

그 뜻은 p가 담고 있는 모든 문자열을 돌고 나서 가장 마지막을 가리켰다는 뜻입니다.

(문자 하나씩 포인터로 넘겨가면서 짚었고, 가장 마지막에 \0 문자를 짚었기 때문)


 

그리고 마지막에 result의 끝에 null ('\0')을 넣었습니다.

지금 이 상태는 ['문자1개', '문자1개', '문자1개', ....., '\0'] 인 상태가 result에 담겨 있는 것입니다.

이 배열을 %s로 출력하면 처음부터 '\0'을 만날 때까지 모두 출력합니다.

 

그래서 개행이 안되고 일자로 죽 출력되는 것이 맞습니다.

C언어에서 문자열은 그냥 문자의 배열과 같다고 보셔야 합니다.

 

#include <stdio.h>

int main() {
    // 문자로 구성된 배열 선언
    char arr[6] = {'H', 'e', 'l', 'l', 'o'};
    
    // 문자열의 끝을 나타내는 '\0'을 삽입
    arr[5] = '\0'; // 배열의 마지막 요소에 '\0' 삽입

    // %s로 배열 출력
    printf("%s\n", arr);

    return 0;
}

이 예제의 출력값은 Hello가 됩니다. (물론 마지막에 개행 하나 되어야 합니다.)

 

이해에 도움이 되셨을까요?

1

이종혁

정답: Nd sc1 이라고 되어있는데
변환된 문자열: <- 이 문자를 누락하신 것 같습니다.

0

주말코딩

네, 맞습니다.

그 부분 양해부탁드립니다.

26년2회 실기기출은 언제쯤...

0

29

2

이론 공부법 요약본 버전 업데이트 문의

0

29

2

정처기 필기 준비할때 이 이론을 다시 외워도 될까요?

0

56

2

조건 반복문 질문: for 문 ?

0

66

1

정처기 26-2회. 9번 질문드립니다!

0

83

1

이론 보면서 질문이 있습니다.

0

80

2

정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문

0

90

2

유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)

0

149

2

262 정처기 실기 C언어코딩

0

48

1

정보처리기사 262 실기 Hash(해시) 질문

0

82

2

static 변수 질문입니다.

0

63

2

파이썬 4강 질문입니다.

0

72

2

모의고사 1회 3번문제

0

93

3

41강 30:10

0

68

2

이론 공부법 질문 있습니다.

0

92

2

부모의 생성자 관련 질문

0

68

2

시험지 문제에 필기해도 되나요?

0

91

3

41강 11:23

0

60

2

4강파이썬 질문입니다

0

57

2

try-catch 핸들러명

0

68

2

36강 3:48

0

66

2

35강 18:27

0

68

2

자식 코드 내 super() 생략

0

60

2

출력질문

0

78

2