寻找子串函数

来源:互联网 发布:静态常量整型数据成员 编辑:程序博客网 时间:2024/04/30 18:36

题目:写一个在一个字符串(n)中寻找一个子串(m)第一个位置的函数。

#include <stdio.h>
#include 
<stdlib.h>
#include 
<conio.h>

int find(char *s,char *m)
{
    
char *p=s;
    
char *q=m;
    
int i=0,j=0;
    
while(p!=NULL)
    
{
        
if(*q==0break;
        
else{
            
if(*p==*q)
            
{
                p
++; q++; i++; j++;
            }

            
else
            
{
                p
++; q=q-i; i=0; j++;
            }

        }

    }

    
return j-i+1;    
}


int main()
{
    
char *s="adsdfadagfaghfahgjsarewragfjsgjsgmcvhjtyijhgjd";
    
char *m="jsg";
    
int i;
    i
=find(s,m);
    printf(
"%d ",i);
    getch();
    
return 0;
}

 

结果显示:28。

原创粉丝点击