#include<stdio.h>
#include<string.h>
char *my₋str(char* dest,char * src)
{
if(*src=='\0')//如果src直接为空,那就返回dest
return dest;
char *s1=NULL;//遍历dest字符串
char *s2=NULL;//遍历src字符串
char *sign=dest;//记录dest
while(*sign)
{
s1=sign;//每回都让sign赋给s1
s2=src;//如果有一部分字符相同,但整体不相同,那此时跳出循环再让src回滚
while(*s1==*s2 && *s1 && *s2)//如果两个字符串到\0了都相同,那就跳出循环
{
s1++;
s2++;
}
if(*s2=='\0')
return sign;//
sign++;
}
return NULL;//循环结束了还没有那就是找不到了
}
int main()
{
char arr[]="killfafakillfafa";
char *src="fa";
char *p=my₋str(arr,src);
int count=0;
while(p)
{ p+=strlen(src);//取到第一次出现src的位置再偏移一个src的长度去找下一次
p=my₋str(p,src);
count++;
}
printf("字符串中出现%s的次数是%d次",src,count);
return 0;
}
c语言在字符串中找字符出现的次数
最新推荐文章于 2023-08-16 18:59:48 发布