#include
char s[999],t[999];
int strseek(char* a,char* b)
{
int i,j,k=0,m,n;
for(m=0;a[m];m++);
for(n=0;b[n];n++);
if(mfor(i=0;i+n<=m;i++)
{
for(j=0;j{
if(a[i+j]!=b[j])break;
}
if(j==n)k++;
}
return k;
}
int strout(char* a,char* b,int times)
{
int i,j,k=0,m,n;
for(m=0;a[m];m++);
for(n=0;b[n];n++);
if(mfor(i=0;i+n<=m;i++)
{
for(j=0;j{
if(a[i+j]!=b[j])break;
}
if(j==n)k++;
if(k==times)return i;
}
return -1;
}
int main()
{
scanf("%s%s",s,t);
printf("%d",strseek(s,t));
printf("%d",strout(s,t,2));
}
strseek(a,b) 返回在a串中b串出现的次数
strout(a,b,t) 返回a串中第t次出现b串时的a串对应下标
首先我鼓励你大量的使用库函数,其次比较字符串中的字符是否相等可以不需要库函数,比如下面的代码就可以
int find(char* str,char v){
int ret=0;
while(1){
if(*(ret+str)==v) return ret;
else if(!(*(ret+str))) return -1;
ret++;
}
return 0;//永远都不会执行这句
}