티스토리 뷰

728x90
반응형

백준 온라인 저지(BOJ) 11721번 열 개씩 끊어 출력하기

https://www.acmicpc.net/problem/11721

 

11721번: 열 개씩 끊어 출력하기

첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다.

www.acmicpc.net

* 사용언어 : C언어, C++

 

1. 문제

길이가 N 인 단어를 한 줄에 10글자씩 끊어서 출력

 

2. 풀이

문자열 전체를 scan 함수와 %s로 입력받습니다.

큰 틀은 while 문으로 잡고,

문자 개수를 세는 int형 idx 변수를 1씩 늘려가며 출력해줍니다.

 

그리고 출력한 문자가 10개가 될 때마다 개행을 해줍니다.

10개를 count 하는 방식은 여러가지가 있는데, 저처럼 10으로 나눈 나머지로 확인해도 되고

cnt 변수를 선언해서 +1 하면서 10이 될 때 마다 0으로 초기화해도 됩니다.

 

input 에 더 이상 출력할 문자가 없으면 while 문을 빠져나옵니다.

(문자 '\0' (null) 이 정수로 0이므로 false 로 처리됨)

 

3. 코드

#include <stdio.h>

int main() {
	char input[100];
	scanf("%s ", input);

	int idx = -1;
	while (input[++idx]) {
		printf("%c", input[idx]);
		if (idx % 10 == 9) puts("");
	}
	return 0;
}
728x90
반응형
댓글