请教一个C语言中字符串1中有没有包含字符串2的问题
字符串1中没有包含字符串2的内容。。我写出来后经过测试,在三十以内的中文可以有99%不出错,而在输入英文状态的时候要不重复的不错,如果一重复出错率就相当高..原因到现在也没搞清楚..那位高手帮我看下..多谢了#include<stdio.h>
#include<string.h>
char strbj(char a[],char b[])
{
int m,n,i,j;
m=strlen(a);//求字符长度
n=strlen(b);
if (m<n) {printf("no\n字符串1中没有包含字符串2的内容");return 0;}
else
{
for (i=0;i<m;i++)
{
if (b[0]==a[i])
{
for (j=1;j<n;j++,i++)
if (b[j]!=a[i+1])//如果b[j]和a[i]不相合,那么跳出,否则继续j++
break;
}
}
}
if (j==n)printf("yes\n其中字符串1中包含了字符串2的内容");
else printf("no\n字符串1中没有包含字符串2的内容");
return 0;
}
main()
{
char a[200],b[150];
int i,j;
scanf("%s",a);
scanf("%s",b);
strbj(a,b);
getch();
}
也就是说这个出错是随机的..
[ 本帖最后由 snr108 于 2009-9-15 04:48 编辑 ]