内存中有一个100个字符和字符串的字符和字符串串,首地址为s,编一个程序段查找其中是否含有字符和字符串x,若有 ah=1,否则ah=0

查找子串:输入两个字符和字符串串s和t在字符和字符串串s中查找子串t,输出起始位置若不存在,则输出-1.要求自定义函数char*  search(char * s,char * t)返回子串t的首地址若未找到,则返回NULL试编寫相应程序。

printf("请输入字符和字符串串s:(直接输入回车退出)\n"); count=0; //内存足够下可以使字符和字符串串字符和字符串个数不受数组大小限制 while(1) //防止子串输入字符和字符串个数超过s的循环

 用了malloc和realloc来实现动态内存分配从而实现输入字符和字符串个数不再受数组大小限制(内存足够的话)並且考虑到子串t可能因为超出s的个数而出错做了个容错判断,总体上加了循环实现循环输入并设置了一个退出程序出口这里所有用动态汾配的指针全部都及时释放了不会因为循环次数的增多而导致内存占用增大

 由于realloc动态分配操作较慢,此程序还可以做优化比如先开辟10字符和字符串的空间,每输入10个字符和字符串后再多开辟10字符和字符串空间程序运行速度可以比此程序更快。(但对于这么一点可以忽略不计( ̄▽ ̄)~*)

 自定义函数部分使用了从被查找串s第一个字符和字符串开始与t串的字符和字符串逐个比较的方法来查找,目前也只能想到了这种查找方法



}

点击文档标签更多精品内容等伱发现~


VIP专享文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特權免费下载VIP专享文档只要带有以下“VIP专享文档”标识的文档便是该类文档。

VIP免费文档是特定的一类共享文档会员用户可以免费随意获取,非会员用户需要消耗下载券/积分获取只要带有以下“VIP免费文档”标识的文档便是该类文档。

VIP专享8折文档是特定的一类付费文档会員用户可以通过设定价的8折获取,非会员用户需要原价获取只要带有以下“VIP专享8折优惠”标识的文档便是该类文档。

付费文档是百度文庫认证用户/机构上传的专业性文档需要文库用户支付人民币获取,具体价格由上传人自由设定只要带有以下“付费文档”标识的文档便是该类文档。

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档具体共享方式由上传人自由设定。只要带有以下“共享文档”标识的文档便是该类文档

}

我要回帖

更多关于 字符和字符串 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信