注意循环次数防止数组越界,读入字符串用gets,巧用数组中逐步“推进” 方法
#include<stdio.h>
#include<string.h>
int main(void)
{
int flag,i,j,len1,len2,count = 0;
char str1[110],str2[110];
gets(str1); //读字符串用gets比较好
gets(str2);
len1 = strlen(str1);
len2 = strlen(str2);
for(i=0;i<=len1-len2;i++) //循环len1-len2次,防止越界
{
flag = 1;
for(j=0;j<len2&&flag;j++) //用flag开关比较好
if(str1[i+j] != str2[j]) flag=0;
if(flag)count++;
}
printf("%d\n",count);
return 0;
}
#in