用C语言编写程序,从键盘输入两个字符串,输出第一个字符串在第二个字符串中的位置

从键盘输入两个字符串,输出第一个字符串在第二个字符串中的位置(第一个字符串的首字母在第二个字符串中的位置,如“abc”在“bbbacccabcddaw3”的位置为7)
要求:使用指针的方法遍历数组
请用C语言编写,谢谢啦。
刚学C语言,请不要写的太复杂了,谢谢啦

第1个回答  推荐于2017-10-10
#include <stdio.h>
int main()
{
    char str1[100],str2[100];
    char *p,*p1,*p2;
    gets(str1);
    gets(str2);
    for(p=str1;*p!='\0';p++)
    {
        for(p1=p;p2=str2;*p1==*p2;p1++,p2++);
        if(*p2=='\0')
        {
            printf("%d",p-str1);
            return 0;
        }
    }
    return 0;
}

追问

请教大神

追答#include <stdio.h>
int main()
{
    char str1[100],str2[100];
    char *p,*p1,*p2;
    gets(str1);
    gets(str2);
    for(p=str1;*p!='\0';p++)
    {
        for(p1=p,p2=str2;*p1==*p2;p1++,p2++);
        if(*p2=='\0')
        {
            printf("%d",p-str1);
            return 0;
        }
    }
    return 0;
}

不好意思,for循环有个分号忘了改掉了。

本回答被提问者采纳