#include
int match(char *a,char *b)//a表示输入的英文段落 b表示即将要匹配的单词
{
char *temp; //用来存放匹配的单词
int count = 0; //
temp = b; //用temp将b存储
while(*a!='\0') //用来判断a段落是否扫描完
{
if(*a == *temp)
temp++;
else
temp = b; //只要有一次不等于就刷新注意地址指向的值始终只有一个元素
a++; //操作完成了再来移动段落
if(*temp == '\0')
{
count++;
temp = b; //刷新temp
}
}
return count;
}
int main()
{
char a[1000],b[100];
printf("输入段落:\n");
gets(a);
printf("输入单词:\n");
gets(b);
printf("单词个数:%d\n",match(a,b));
getchar();
getchar();
}
重点
1.关于字符串的几个常识
指针只是指向字符串的头地址
一个一个的匹配
注意操作带不带*号

本文介绍了一个使用C语言实现的简单字符串匹配算法,该算法能够统计一个单词在一个英文段落中出现的次数。通过逐字符比较的方式进行匹配,并利用指针来跟踪字符串的位置。
1050

被折叠的 条评论
为什么被折叠?



