C语言 计算字符串中子串出现的次数 求更改
代码如下,可以运行,但结果不对,求更改.#include"stdio.h"#include"string.h"intsubString(chara[],charb[]){...
代码如下,可以运行,但结果不对,求更改.
#include"stdio.h"
#include"string.h"
int subString(char a[],char b[])
{
int sum=0,*pc,l;
pc=a;
l=strlen(b);
while(pc!=NULL)
{
pc=strstr(pc,b);
if(pc!=NULL)
{
sum++;
pc=pc+l;
}
}
return sum;
}
main()
{
char str1[100],str2[10];
int sum;
gets(str1);
gets(str2);
sum=subString(str1,str2);
printf("%d",sum);
return 0;
} 展开
#include"stdio.h"
#include"string.h"
int subString(char a[],char b[])
{
int sum=0,*pc,l;
pc=a;
l=strlen(b);
while(pc!=NULL)
{
pc=strstr(pc,b);
if(pc!=NULL)
{
sum++;
pc=pc+l;
}
}
return sum;
}
main()
{
char str1[100],str2[10];
int sum;
gets(str1);
gets(str2);
sum=subString(str1,str2);
printf("%d",sum);
return 0;
} 展开
展开全部
子函数subString(char a[],char b[])中的*pc定义成char类型即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-05
展开全部
#include"stdio.h"
#include"string.h"
int subString(char a[],char b[])
{
int sum=0,l;
char *pc; //指针类型为字符型
pc=a;
l=strlen(b);
while(pc!=NULL)
{
pc=strstr(pc,b);
if(pc!=NULL)
{
sum++;
pc=pc+l;
}
}
return sum;
}
main()
{
char str1[100],str2[10];
int sum;
gets(str1);
gets(str2);
sum=subString(str1,str2);
printf("%d",sum);
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询