急求。。。C语言实现,计算字符串中子串出现的次数,就是先输入一个字符串,再输入一个上面字符串中存在

急求。。。C语言实现,计算字符串中子串出现的次数,就是先输入一个字符串,再输入一个上面字符串中存在的字符串,计算第二个字符串在第一个字符串中出现的次数。好评... 急求。。。C语言实现,计算字符串中子串出现的次数,就是先输入一个字符串,再输入一个上面字符串中存在的字符串,计算第二个字符串在第一个字符串中出现的次数。好评 展开
 我来答
cjj796
2013-11-15 · TA获得超过8709个赞
知道大有可为答主
回答量:1.3万
采纳率:68%
帮助的人:3453万
展开全部

你好!给你一个程序,这个程序可以统计含有空格的字符串

    

完整的代码:

#include <stdio.h>
#include <string.h>

int find(char * str1, char * str2) 

int i,j; 
int str1len=strlen(str1),str2len=strlen(str2); 
int count=0; 
for(i=0;i<str1len-str2len+1;i++)
 { 
   for(j=0;j<str2len;j++)    
   { 
     if(str2[j]!=str1[i+j]) 
   break;    
   } 
   if(j==str2len)
     count++;    
 }
 return count;
}
   
int main()
{
char a[200],b[200],*g;
int c=0;
printf("请输入主串:");
gets(a);
printf("请输入子串:");
gets(b);

    c=find(a,b);

printf("出现的次数:%d\n",c);
return 0;
}
朋友想念你
推荐于2017-11-26 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1916
采纳率:0%
帮助的人:1149万
展开全部
#include <stdio.h>
#include <string.h>
void main()
{
    char str1[20], str2[20], *p1, *p2;
    int sum=0;
    printf("Please enter two strings\n");
    scanf("%s%s", str1, str2);
    p1=str1;
    p2=str2;
    while(*p1 != '\0')
    {
        if(*p1 == *p2)
        {
            while(*p1 == *p2 && *p2 != '\0')
            {
                p1++;
                p2++;
            }
        }
        else
            p1++;
        if(*p2 == '\0')
            sum++;
        p2=str2;
    }
    printf("%d", sum);
    getchar();
}

希望这个能帮到你。。加油吧少年

  • 请放心使用,有问题的话请追问

  • 满意请及时采纳,谢谢,采纳后你将获得5财富值。

  • 你的采纳将是我继续努力帮助他人的最强动力!

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
流风121
2013-11-15 · 超过13用户采纳过TA的回答
知道答主
回答量:38
采纳率:0%
帮助的人:26.9万
展开全部
int countsubstr(char *str ,char * substr)
{
int count=0;
int nowindex=0;
for(int i=0;i<strlen(str);i++)
{
char isOK=1;
for(int j=0;j<strlen(substr);j++)
{
if(str[i+j]=='\0')return count;

if(str[i+j]!=substr[j]) isOK=0;
break;
}
if(isOK==1)
{
count++;
i+=strlen(substr)-1;
}
}

return count;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
花菇_朵儿
2013-11-15
知道答主
回答量:25
采纳率:0%
帮助的人:8.1万
展开全部
AT("子字符串")
更多追问追答
追问
AT是什么?我要C实现的,麻烦你帮我写一个
追答
?AT("百度","百度知道")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式