#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define LEN 20
int LocatStr( char *, char *,int );
void main()
{
int n,a;
char *str1,*str2;
str1 = malloc( LEN*sizeof( char ) );
str2 = malloc( LEN*sizeof( char ) );
gets( str1 );
gets( str2 );
scanf("%d",&n);
a = LocatStr( str1, str2, n );
printf("\n%d\n",a);
}
int LocatStr( char *str1, char *str2, int n )
{
int str2_len,str1_len,i,j=0,k;
str1_len = strlen( str1 );
str2_len = strlen( str2 );
if ( n > str1_len - str2_len +1 )
return 0;
else {
for ( i=n-1; i<str1_len; i++ ) {
for ( j=0,k=i; j<str2_len; j++,k++ ) {
if ( *(str1+k) != *(str2+j) ) {
break;
}
}
if ( j == str2_len )
return i+1;
}
return 0;
}
}
算法4.1 在一个字符串寻找子串,并返回位置
最新推荐文章于 2024-08-12 14:02:36 发布