|
发表于 2009-11-3 02:19:23
|
显示全部楼层
IP:江苏扬州
还是不服气,又改进了一下,打死我都不用string类,大小写问题解决了,“aaabcdefg"里找"aab"的问题也解决了.还有那里不对?哥们儿来纠正一下.
#include "iostream.h"
void main()
{
int i=0,j=0,t=0,k=0,g=0,c=0,p=0;
char a[10],b[100];
cout<<"输出总字符串"<<endl;
cin>>b;
cout<<"输出要查找的字符串"<<endl;
cin>>a;
while(a[t]!='\0')t++;
while(b[k]!='\0')k++;
for(i=0;i<k;i++)
if(int(b[i])<=90&&int(b[i])>=65)
b[i]=b[i]+'a'-'A';
for(i=0;i<t;i++)
if(int(a[i])<=90&&int(a[i])>=65)
a[i]=a[i]+'a'-'A';
if(t==1)
for(i=0;i<k;i++)
{if(a[0]==b[i])c++;}
else
{for(i=0;i<k;i++)
{if(a[0]==b[i])
{p=i;for(j=1;j<t;j++){if(a[j]!=b[++p])break;else g++;}}
p=0;
if(g==t-1){c++;}g=0;}}
cout<<"子串个数";
cout<<c<<endl;
}
在此谢过 |
|