字符串匹配问题
一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案。对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢?
abcde a3 aaaaaa aa #
0 3
#include<stdio.h>
#include<string.h>
int main()
{
char str1[1005]={0},str2[1005]={0};
while(scanf("%s",&str1))
{
if(str1[0]=='#')
break;
scanf("%s",&str2);
int len1,len2,cnt=0;
len1=strlen(str1);
len2=strlen(str2);
for(int i=0;i<len1;)
{
if(i+len2<=len1)
{
if(strncmp(str1+i,str2,len2)==0)
{
i+=len2;
cnt++;
}
else
i++;
}
else
break;
}
printf("%d\n",cnt);
}
return 0;
}