⚙️ 알고리즘/기타 문제 & 풀이

[C] 문자열을 입력받아 첫 번째로 등장하는 단어 출력

dev_zoe 2020. 7. 18. 01:43
반응형

문자열을 입력받아 그 안의 첫 번째 단어를 출력하는 프로그램을 작성하시오.

 

입력: 123word

출력: word

 

입력: 123apple45pear

출력: apple

 

#include <stdio.h>
#define TRUE 1
#define FALSE 0

int main(void) {
	char str[20];
	char word[20];
	int i, j = 0;
	int isFound = FALSE;

	scanf("%s", str);

	for (i = 0; str[i] != '\0'; i++) {
		if ((str[i] >= 'a' && str[i] <= 'z') || (str[i]>='A' && str[i]<='Z')) { //문자를 발견하면
			isFound = TRUE; //isFound 플래그 변수를 true로
			word[j++] = str[i]; //word에 차례대로 문자열 복사
		}
		else if (isFound) 
			break;  //문자가 아니면서 isfound가 true이면 첫 번째 문자열을 모두 복사한 경우이므로 반복문 중단
	}
	word[j] = '\0';

	printf("%s\n", word);
}
반응형