6 - 5 문자열 - 6. 하위 문자열 찾기 (BF 알고리즘) * (12 점)

1190 단어 데이터 구조
6 - 5 문자열 - 6. 하위 문자열 찾기 (BF 알고리즘) * (12 점)
C 언어 표준 함수 라 이브 러 리 에는 strstr 함수 가 포함 되 어 있 으 며, 메 인 문자열 에서 하위 문자열 을 찾 습 니 다.연습 으로 우 리 는 그것 과 같은 기능 을 가 진 함 수 를 직접 만 들 었 다.
함수 원형 / / 하위 문자열 char * StrStr 찾기 (const char * txt, const char * pat);설명: txt 와 pat 는 각각 주 문자열 과 하위 문자열 의 시작 주소 입 니 다.검색 에 성공 하면 함수 값 은 하위 문자열 이 주 문자열 에 처음 나타 나 는 시작 주소 입 니 다. 그렇지 않 으 면 편지 값 은 NULL 입 니 다.
특히, 우 리 는 C 언어 라 이브 러 리 함수 strstr 를 적 절 히 수정 합 니 다. 하위 문자열 이 빈 문자열 이면 의미 가 없고 함수 값 은 NULL 로 규정 합 니 다.
심판 절차 \ # include
/ / 하위 문자열 char * StrStr (const char * txt, const char * pat) 찾기;
int main() { char m[1024], s[1024], *p; gets(m); gets(s); p = StrStr(m, s); if § { printf("%d", p - m); } else { puts(“Null”); } return 0; }
/ * 당신 이 제출 한 코드 는 여기에 박 혀 있 습 니 다 * / 입력 샘플 1 This is a pencil is 출력 샘플 1 2 입력 샘플 2 This is a pencil be 출력 샘플 2 Null

char* StrStr(const char *txt, const char *pat)
{
	char *p=(char *)txt;
	char *q=(char *)pat;
	int l1=0,l2=0,i=0,j=0;
	while(txt[l1]!='\0') l1++;
	while(pat[l2]!='\0') l2++;
	i=0,j=0;
	if(l2<=0)
		return NULL;
	while(i=l2)
		return p+(i-l2);
	return NULL;
}

좋은 웹페이지 즐겨찾기