第198 单词个数统计感觉有些啰嗦,貌似不能实现吧?这是我在那个基础上修改的,请大家指正
#include <stdio.h>
#include <string.h>
int findStr(char *str,char *substr) ;
void main()
{
char str[81], substr[10] ;
int n=0;
printf("输入原字符串:") ;
gets(str) ;
printf("输入子字符串:") ;
gets(substr) ;
puts(str);
puts(substr);
n=findStr(str, substr) ;
printf("n=%d\n", n) ;
}
int findStr(char *str,char *substr)
{
int
k=0, l=0;
//l代表字串已经匹配的长度
int len=strlen(substr);
while (*str)
{
while(*substr)
{
if(*str==*substr)
{
str++;
substr++;
l++;
}
else
{
substr=substr-l;
//当字符失配时,字串位置回到首位
l=0;
//匹配长度归零
break;
}
}
if(l==len)
{
k++;
substr=substr-len;
//当匹配玩一次后,字串回到首位
l=0;
//匹配长度归零
}
str++;
}
return
k;
}