PGR21.com
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
Date 2010/03/14 13:43:27
Name 녹차한잔의여
Subject C> 문자열에서 특정문자 반복횟수 찾기...
문자열에서 특정문자(단어)의 반복횟수를 찾을려 하는데요...

예를 들어..
I can can have have
라고 입력하면
I 1
can 2
have 2
뭐 이런식으로 출력되게 하려고 합니다.

입력받은 문자열을 복사해두고
각각 tok로 잘라서 반복문 중첩으로 돌려서 일일히 대조해볼려고 했는데...

strok를 써서 하려는데 strtok는 함수자체가 한번밖에 못돌아가더라고요...
(str1,str2 이렇게 문장이 있을경우 << 따로 추출이 안되더라고요...)

아예 방법을 새롭게 생각해봐야할 것같은데....
어떤 방법이 있을까요.....?



통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
WizardMo진종
10/03/14 13:53
수정 아이콘
cancan 은 cancan이란 단어로 보나요 아니면 can이공백없이 들어온거로 보나요? 후자라면 음;;;
전자라면 자를때마다 링크드 리스트를 만들어서 그안에서 서치하고 같은 문자열이 있다면 카운터+1 같은 문자열이 없다면 새로 할당해서 추가하고 잘라온 데이터를 넣는걸로 하는게 좋을꺼 같습니다.
azurespace
10/03/14 13:58
수정 아이콘
#include<stdio.h>
#define MAXLEN 100

char *word[MAXLEN / 2];
char buf[MAXLEN];

int main(void)

int i, wordn;
bool flag = true;

gets(buf);

i = wordn = 0;
while(buf[i] != '\0'){
if(flag){
word[wordn++] = buf + i;
flag = false;


if(buf[i] == ' ')

buf[i] = '\0';
flag = true;

++i;
}
return 0;
}
azurespace
10/03/14 14:00
수정 아이콘
C는 오랜만에 잡아 보네요. 아마 될 겁니다. 메모장에 그냥 쓱 친거라서..
입력을 분리하여 character형 포인터의 배열인 word에다가 각 단어의 시작 위치를 집어넣습니다.

이렇게 분리된 단어를 참조할 때는 word[0][0], word[1][2] 와 같은 식으로 쓰시면 되겠습니다.
'\0'이 NULL을 나타내는 것이며, C에서 NULL 문자는 곧 문자열의 끝으로 간주된다는 것을 알고 계신다면 이해하기에 그리 어렵지는 않을 것입니다.

그리고 참고로 strtok는 첫번째 인자에 NULL을 집어넣으면 이전에 찾은 부분 다음에서 작업을 계속합니다.
녹차한잔의여
10/03/14 14:29
수정 아이콘
헉... 풀어주시리라..생각한건 아닌데...

답변 정말 감사드립니다.^^;
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
76665 저도 스타 방을 만들어서 게임하고 싶습니다. [3] MoreThanAir1569 10/03/14 1569
76664 헬스 괜히했다는 생각조차 드는데요 [15] 라울2623 10/03/14 2623
76663 지금 드랍걸려있습니다... [3] axbycz1842 10/03/14 1842
76662 특정사이트가 갑자기 안되는건 무슨상황이죠. 배려2779 10/03/14 2779
76661 고전게임 사이트 추천좀 해주세요 [9] 샴페인슈퍼노2144 10/03/14 2144
76660 회사내에서의 능숙한 고백방법 [3] Grateful Days~2122 10/03/14 2122
76659 컴퓨터 주변기기 구입을 위한 인터넷 쇼핑몰?? [7] 파블로 아이마1407 10/03/14 1407
76658 던파 질문입니다 [4] 다레니안1706 10/03/14 1706
76657 믿을 수 있고 싼 안전거래 사이트 [2] ArcanumToss2165 10/03/14 2165
76653 영어 간단한 해석좀... [1] 靑龍의 力1297 10/03/14 1297
76652 전자사전 2개를 놓고 고민입니다 [7] 가까우면벙커1546 10/03/14 1546
76651 윈도우 7 백신 질문입니다. [7] 무적KT1547 10/03/14 1547
76649 저도 스타크래프트 방을 만들어서 겜을 하고 싶습니다. 도와주세요 [13] 틀림과 다름4797 10/03/14 4797
76648 읽을거리 많은 사이트 추천해주세요 라우르3835 10/03/14 3835
76647 C> 문자열에서 특정문자 반복횟수 찾기... [9] 녹차한잔의여4882 10/03/14 4882
76646 왜 몇 번을 다시 설치해봐도, 제 넷북에선 ms office가 안 돌아갈까요?? [2] 선미남편1689 10/03/14 1689
76645 [긴급] 그래픽카드 추천 부탁드립니다. [4] 희망고문1832 10/03/14 1832
76642 PGR에 성인용 게시판이 하나 있는 건 어떨까요? [38] 선미남편2671 10/03/14 2671
76641 쓸만한 리모트 컨트롤 프로그램 있을까요? [1] MoreThanAir2018 10/03/14 2018
76640 윈도우7 자잘한 문제들이 왜 이렇게 많은가요...? 도와주세요! [3] Rukawa1969 10/03/14 1969
76639 어떤 영호가 진짜인가요? [14] 천마신군2594 10/03/14 2594
76637 파워서플라이와 하드디스크간의 전원 문제 입니다. [4] 강희최고2195 10/03/14 2195
76636 여차친구가 화난거같아요..어떻게 풀어주죠? [19] 아즈라헬3004 10/03/14 3004
목록 이전 다음
댓글

+ : 최근 6시간내에 달린 댓글
+ : 최근 12시간내에 달린 댓글
맨 위로