有一个在给定字符串中查找子串的函数strstr,该函数从给定的字符串src中查找substr并返回一个整数,指明substr第一次出现的位置(从0开始计数),如果找不到则返回-1。 要求: 1、实现该函数。 2、为该函数设计与实现单元测试。 说明: 1、代码中不允许使用系统已有的库函数,所有用到的库函数都需要自己实现 2、允许使用任何编程语言,函数原型自行给定。参考的C语言函数原型为 int strstr(char* src , char* substr) #include<stdio.h> int strstr(char* src , char* substr) { int location=-1; int len_src; int len_subsrc; int i,j; i=0; while (src[i]!='\0') { i++; } len_src=i; j=0; while (substr[j]!='\0') { j++; } len_subsrc=j; printf("%3d,%3d\n",len_src,len_subsrc); i=0; while(len_src-i>len_subsrc) { j=0; while((substr[j]==src[i])&&(substr[j]!='\0')) { printf("%c,%c\n",src[i],substr[j]); j++; i++; } if(j==0) { i++; } printf("----------\n"); if(j==len_subsrc) { location=i-j; break; } } if(location!=-1) return location; else return -1; } void main() { char *src="ahdgsgabcwehdaj"; char *substr="abcwe"; //strstr(src,substr); int result=strstr(src,substr); printf("%3d\n",result); }
strstr匹配
原创
©著作权归作者所有:来自51CTO博客作者马二丫的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C++ 模板匹配matchTemplate
C++ 模板匹配matchTemplate
opencv 模版匹配 -
【数据结构】详细介绍串的简单模式匹配——朴素模式匹配算法
【数据结构】第四章——串详细介绍串的朴素模式匹配算法……
数据结构 模式匹配 C语言 字符串匹配 -
实现strStr()
实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个
leetcode 算法 java string substring