C 언어 데이터 구조 - 하위 문자열 의 포 지 셔 닝 함수
#include
#include
#include
#define Max 100
#define TRUE 1
#define FALSE 0
typedef unsigned char SString[Max+1];
typedef int Status;
Status StrAssign(SString T,char *strs)
{ // chars T
int i;
T[0]=0;
for(i=0;strs[i];i++)
{
T[i+1]=strs[i];
T[0]=i+1;
}
}
int Index(SString S,SString T,int pos)
{ // T S pos 。 , 0。
// ,T ,1≤pos≤StrLength(S)。 4.5
int i,j;
i = pos;
j = 1;
while( i<=S[0] && j<=T[0] )
{
if(S[i]==T[j])
{
++i;
++j;
}
else
{
i=i-j+2;
j=1;
}
}
if(j>T[0])
return i-T[0];
else
return 0;
}
int main()
{
SString S,T;
int m;
char strs1[Max];
char strs2[Max];
printf(" :");
gets(strs1);
printf(" :");
gets(strs2);
StrAssign(S,strs1);
StrAssign(T,strs2);
m=Index(S,T,1);
if(m)
printf("%d
",m);
else
printf("0
");
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.