vidigummy KAU/2017년도 2학기 프로그래밍 기초

20171206 프로그래밍 기초

vidi 2017. 12. 6. 15:06


문제를 보면 작성할 코드가 그렇게 많지 않아 보인다. 그리고 그렇다.

먼저 확인해야 할 점은 strtok()와 strchr()인데, 써 본적이 한번도 없어서 라이브러리를 확인해야한다.

strtok() : https://www.ibm.com/support/knowledgecenter/ko/ssw_ibm_i_73/rtref/strtok.htm

strchr() : https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/rtref/strchr.htm


일단 한 줄을 다 받긴 했는데(fgets()를 사용하라고 하셨으니까), 띄어쓰기 기준으로 나눠야한다. 그러려면 전역변수로 char *Words[100]을 선언하여 단어들을 넣어줄 공간을 만들어주고 

이와 같이 해준다. ( i를 리턴해주는 이유는 단어의 수가 명확한게 좋기 때문이다. 메인에 저장해준다.)

그 다음 탐색을 수행해야 하는데, 이중 for문을 그냥 박기는 싫어서 strchr()을 이용한 함수를 만들었다.

strchr의 리턴 값인 포인터가 뭐가 들어올지 몰라서 그냥 NULL 값이 아니면 맞는걸로 쳤다. 둘 중에서 위 사진은 main에 작성한 함수 실행을 위한 for문이다.

Source.cpp

Lab12 문자들 중에서 하나라도 포함하는 문자열.pdf