编辑代码

#include <stdio.h>
#include <string.h>

int mate (char * B,char * A)
{
    int i=0,j = 0;
    while(i<strlen(B) && j < strlen(A))
    {
        //如果相等说明匹配,反之不匹配
        if(B[i] == A[j])
        {
            i++;
            j++;
        }else
        {
            i = i-j+1;
            j=0;
        }
    }
    //跳出循环有两种可能,要么i=strlen(B)遍历完成,匹配失败
    //要么j=strlen(A) 完成,子串匹配成功
    if(j==strlen(A))
    {
        return i-strlen(A)+1;
    }
    return 0 ;
}
 int main ()
 {
     int number = mate("ababcabcacbab","abcac");
     printf("%d",number);
     return 0;
 }