[20],int len,char * str ){
int i=0;
int find=0;
while(i<len){
if(strcmp(words[i],str)==0){
break;
}
i++;
}
return i;;
}
int main(void){
char str[256];
char words[100][20];
printf("请输入字符串:\n");
gets(str);
//printf("str=%s\n",str);
int i=0;
char ch = str[i];
int num=0;
int index=0;
int start=1;
//把字符串所有单词存入二维字符数组
while(str[i]!='\0'){
while(start==1&&str[i]!='\0'){
words[num][index]=ch;
index++;
i++;
ch=str[i];
if(isalpha(ch)==0){
start=0;
words[num][index]='\0';
// printf("words[%d]=%s\n",num,words[num]);
num++;
index=0;
break;
}
}
if(str[i]!='\0'){
i++;
ch=str[i];
if(isalpha(ch)!=0){
start=1;
}
}
}
words[num][index]='\0';
//printf("num=%d\n",num);
// for(i=0;i<num;i++){
// printf("%s\n",words[i]);
// }
char same[20][20]={'\0'};
int sameNum[20]={0};
int sn=0;
int temp;
int j=0;
//遍历整个数组,统计所有单词出现的次数
while(j<num){
temp = findWord(same,sn,words[j]);
// printf("temp=%d\n",temp);
if(same[temp][0]=='\0'){
strcpy(*(same+temp),words[j]);
sn++;
}
sameNum[temp]++;
j++;
}
//把出现两次的单词信息打印出来
for(j=0;j<sn;j++){
if(sameNum[j]>1){
printf("%s:%d次\n",same[j],sameNum[j]);
}
}
return 0;
}