조회 수 512 추천 수 0 댓글 0

#include <stdio.h>

char word[50];
char list[50][50];

int finish(void); //종료할지 말지 결정
void pr(int c); //출력
int list_put(int c); //단어 목록
int search(int a, int c); //단어 목록에 있는 문자인지 검색 
int main(void)
{
	int c=0, i;

	while(1)
	{
		scanf(" %[^\n]s", word);

		if(finish()==1)
			break;

		c=list_put(c);
		pr(c);

		for(i=0; word[i]!='\0'; i++) //초기화 
			word[i]=' ';
		word[i]=' ';
	}

	return 0;
}
int finish(void)
{
	if(word[0]=='E' && word[1]=='N' && word[2]=='D' && word[3]=='\0') //스트링 값이 'END'인 경우
		return 1;

	else
		return 0;
}
void pr(int c)
{
	int i, j;

	for(i=0; i<c; i++)
	{
		for(j=0; list[i][j]!='\0' && list[i][j]!=' '; j++)
			printf("%c", list[i][j]);

		printf(" ");
	}
	printf("\n");
}
int list_put(int c)
{
	int i=0, j, a;
	for(; word[i]!='\0';)
	{
		if(word[i]!=' ')
		{
			a=search(i, c);

			if(a==0) //단어 목록에 없는 단어일 경우
			{
				for(j=0; word[i]!=' ' && word[i]!='\0'; i++, j++)
				{
					list[c][j]=word[i];
				}

				list[c++][j]='\0';
				i++;
			}
			else //단어 목록에 있는 단어일 경우
				i=a;
		}
		else
			i++;
	}

	return c;
}
int search(int a, int c)
{
	int i, j, an, k;
	char aa;

	for(i=0; i<c; i++)
	{
		if(word[a]==list[i][0])
		{
			an=0;
			for(j=0, k=a; list[i][j]!='\0' && word[k]!=' '; j++, k++)
			{
				if(word[k]!=list[i][j]) //두 문자가 같지 않을 경우
				{
					an=1;
					break;
				}
			}
			aa=word[k];
			if(aa=='\0') aa=' ';
			if(an==0 && aa==' ' && list[i][j]=='\0')
				return k;
		}
	}

	return 0;
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 299
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1079
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2397
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10313
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4719
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8274
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 18956
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 37861
330 정올 기초다지기(파일입출력-자가진단3) killerjack 2015.04.11 582
329 정올 기초다지기(aE002-함수2 2) killerjack 2014.07.26 581
328 정올 기초다지기(파일 입출력-자가진단2) killerjack 2014.11.22 580
327 정올 기초다지기(함수3-자가진단2) killerjack 2014.07.26 579
326 정올 - 실력키우기 - 주사위 던지기2(1175) 조정미 2017.12.27 577
325 함수3-자가진단4 file 박윤택 2014.08.15 577
324 정올 - 실력키우기 - 참외밭(2259) 조정미 2018.01.27 575
323 정올 떡 먹는 호랑이 조정미 2017.11.25 573
322 정올 기초다지기(문자열1-자가진단4) killerjack 2014.09.20 573
321 1부터10까지 더하기(승민) 승민 2016.03.05 572
320 정올 - 실전대비 - 줄 세우기(1003) 조정미 2018.05.26 569
319 정올 기초다지기(문자열1-자가진단7) killerjack 2014.09.20 568
318 정올 달팽이 삼각형 조정미 2017.11.18 567
317 정올 - 실력키우기 - 그릇(2604) 조정미 2017.12.27 563
316 정올 기초다지기(포인터-자가진단4) killerjack 2014.11.15 560
315 정올 기초다지기(구조체-자가진단4) killerjack 2014.10.11 560
314 정올 - 알고리즘 - 벽장문의 이동(1409) 조정미 2018.02.10 558
313 정올 숫자야구 조정미 2017.11.18 546
312 정올 함수1 자가진단1 정승준 2018.12.08 542
311 정올 기초다지기(포인터-자가진단5) killerjack 2014.11.15 540
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 26 Next
/ 26