问题:在main中从键盘上输入两个字符串a,b,用函数index在a中查找b,如果找到,返回b在a中的起始位置,没找到返回0。查找函数申明形式如下:int index(char *s,char *t);
这一问题在网上有一些解答,但都不是按照题目的意思来写,在找了一些文章代码看了之后,觉得可以写出一个完整的代码,当然更多的是搬运工工作。
int index(char *s,char *t);//函数声明
int main(){
int f;
char a[100],b[200];
scanf("%s",a);
scanf("%s",b);
f=index(a,b);
printf("%d\n",f);
return 0;}
int index(char *s,char *t){//函数
int la,lb,i,j;
la=strlen(s);
lb=strlen(t);
for(i=0;(lb-i)>=la;i++){
if(t[i]==s[0]){
for(j=0;j<la;j++)
if(t[i+j]!=s[j]) break;
if(j==la){
printf("%d\n",i+1); break;//找到就输出所在位置
}
else {
printf("0"); break;//没有找到就返回0
}
}
}
}