[C] 문자열 덧붙이기

Haeun Noh·2022년 12월 27일
0

C언어_예제

목록 보기
18/19

1227


주어진 문자열 ch ch2을 알고리즘을 이용해 덧붙여 출력하시오.

score : 300

소스 코드

#include <stdio.h>

int main(void) {
	
	char ch[30] = "score : ";
	char ch2[30] = "300";

	int i = 0;
	while (ch[i] != '\0')
		i++;

	for (int j = i; ch2[j-i] != '\0'; j++)
		ch[j] = ch2[j - i];

	printf("%s\n", ch);

	return 0;
}

소스 풀이

	char ch[30] = "score : ";
	char ch2[30] = "300";

덧붙일 문자열인 chch2가 주어진다.


	int i = 0;
	while (ch[i] != '\0')
		i++;

첫번째 문자열인 ch의 길이를 구하기 위해 ch의 값이 null이 아닐 때까지 i1씩 증가시키며 while문을 반복해서 돌린다.

iwhile문 밖에 둔 이유는 아래의 for문에서도 i의 값이 쓰일 것이기 때문이다.


	for (int j = i; ch2[j-i] != '\0'; j++)
		ch[j] = ch2[j - i];

앞에서 구한 i는 곧 ch의 비어있는 첫 번째 방이기 때문에 그 다음 요솟값인 ji를 저장한다. 이 for문도 마찬가지로 null값이 있을 때까지 for문을 반복한다.

비어있는 방인 ch[j]부터 차근히 ch2의 문자를 저장한다. j-i를 해야 ch2의 요솟값이 0부터 차례로 증가하게 된다.


	printf("%s\n", ch);

	return 0;

chch2를 합친 문자열 배열인 ch를 출력한 뒤 프로그램을 종료한다.


실행 결과

score : 300








profile
기록의 힘을 믿는 개발자, 노하은입니다!

0개의 댓글