https://www.acmicpc.net/problem/9086
9086번: 문자열
입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으
www.acmicpc.net
풀이
#include <stdio.h>
int main() {
int t; // 테스트케이스
char s[1000]; // 문자열은 999자까지
int i, j;
scanf("%d", &t);
for (i = 0; i < t; i++) { // 테스트케이스만큼 반복
scanf("%s", &s); // 문자열 입력
j = 0; // 초기화
while (s[j] != '\0') { // 문자열 끝까지 탐색
if (s[j] == s[0]) // 첫번째문자
printf("%c", s[j]); // 출력
if (s[j+1]=='\0') // 마지막문자+1은 널문자(\0)이므로
printf("%c", s[j]); // 마지막문자 출력
j++;
}
printf("\n");
}
return 0;
}
strlen()함수를 통해 끝문자를 찾는 방법도 있다.
필자는 문자열을 처음부터 끝까지 탐색해서 출력하는 방법을 이용했다.
'코딩 > 백준 문제 (브론즈)' 카테고리의 다른 글
[백준/2908/C언어] 상수 _ 풀이 (0) | 2023.08.12 |
---|---|
[백준/1152/C언어] 문자의 개수 _ 풀이 (0) | 2023.08.12 |
[백준/8958/C언어] OX퀴즈 _ 풀이 (0) | 2023.08.11 |
[백준/2720/C언어] 세탁소 사장 동혁 _ 풀이 (0) | 2023.08.11 |
[백준/2675/C언어] 문자열 반복 _ 풀이 (0) | 2023.08.11 |