#include
#include
using namespace std;
int main()
{
char str1[100];
char str2[100];
while (1)
{
cin>>str1;
cin>>str2;
int a=strlen(str1);
int b=strlen(str2);
int j,i,count=0;
for(j=0;j<a;j++)
{
if(str2[0]==str1[j])
{
i=0;
while(str2[i]==str1[j]&&i<b)
{
i++;
j++;
}
if(i==b)
{
count++;
j--;
}
}
}
cout<<count<<endl;
}
return 0;
}
楼主不妨看看KMP算法
http://blog.csdn.net/joylnwang/article/details/6778316
TCHAR strS[100] = _T("aaabvabcabcaabccabc");
TCHAR strD[100] = _T("abc");
int nLenS = _tcslen(strS);
int nLenD = _tcslen(strD);
int nCount = 0;
int i = 0, j = 0, k = 0;
while(k < nLenS)
{
if (strS[k] == strD[j])
{
if (nLenD-1 == j)
{
nCount++;
i += nLenD;
j = 0;
k++;
continue;
}
j++;
k++;
}
else
{
i++;
k = i;
j = 0;
}
}