用函数编程实现计算字符串中子串出现的次数,这个程序不知道错哪了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用函数编程实现计算字符串中子串出现的次数,这个程序不知道错哪了相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
#include <string.h>
#define N 40
int FindString(char *str,char *sub)

int x,y;
int i,j;
int n=0,m=0;
x=strlen(str);
y=strlen(sub);
for(i=0;i<x-y+1;i++)

for(j=0;j<y;j++)

if(str[i+j]==str[j])


m++;


if(m==y)

n++;
m=0;



return n;

int main()


int n;
char a[N];
char b[N];
char *str=a;
char *sub=b;
gets(str);
getchar();
gets(sub);
n=FindString(str,sub);
printf("%d",n);
return 0;

测试样例为9876879998726,11的时候应该输出为0,运行时为什么输出为2,不知道错哪了

参考技术A or(i=0;i<x-y+1;i++)

for(j=0;j<y;j++)

if(str[i+j]==str[j]) ////这里是否存在问题啊 sub怎么没有出现呢?


m++;

以上是关于用函数编程实现计算字符串中子串出现的次数,这个程序不知道错哪了的主要内容,如果未能解决你的问题,请参考以下文章

C语言 计算字符串中子串出现的次数 求更改

C语言问题计算字符串中子串出现的次数。要求:用一个子函数subString()实现,参数为指向字符串

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

计算字符串中子串出现的次数。

急求。。。C语言实现,计算字符串中子串出现的次数,比如输入GACTC,要求输出GA,AC,CT,TC出现的次数

C语言试题159之计算字符串中子串出现的次数