- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
字符串的模式匹配实现
试验四 课程名称 实验室名称 实验名称 字符串的模式匹配实现 指导教师 成绩 实验目的
字符串的模式匹配实现
实验原理和内容
能够使用标志变量去实现程序的某种功能的判定,充分利用while循环语句实现模式匹配并能判定模式匹配是否成功.
实验步骤
1.数据结构类型的定义
2.编写insert函数寻找字符串p在字符串t中首次出现的起始位置,定义一个标志变量suc,判断匹配是否成功,若成功,返回起始位置,否则返回-1
3.编写主函数,将字符串p和字符串t的长度先赋值给p.length和t.length,打印输出所需查找的模式串在主串中的起始位置
程序及运行结果(或实验数据记录及分析)
#includestdio.h
#define maxsize 100
typedef struct{
char str[maxsize];
int length ;
}seqstring;
int index(seqstring p, seqstring t)
{
int i,j, suc;
i=0; suc=0;
while((i=t.length-p.length) (!suc))
{
j=0 ; suc=1;
while ((j=p.length-1) suc)
if (p.str[j]==t.str[i+j] ) j++;
else
suc=0;
++i;
}
if (suc) return (i-1);
else return (-1);
}
main()
{
seqstring t, p;
int sum;
printf(请输入主串t:);
scanf(%s,t.str);
t.length=strlen(t.str);
printf(请输入所需查找的子串p:);
scanf(%s,p.str);
p.length=strlen(p.str);
sum=index(p,t);
printf(\n);
if (sum==-1) printf(no found);
else
printf(所需查找子串第一次出现的位置是:%d,sum+1);
}
在屏幕上输出的结果:
您可能关注的文档
最近下载
- 规章制度:关于加强退出领导岗位干部的管理办法.docx
- 2024第六届(2024年)“信用电力”知识竞赛活动总试题库-下(多选、判断题汇总).docx
- 清产核资审计报告模板(范文).pdf
- 2024CSCO食管癌诊疗指南.pptx
- 全屋整装定制装修合同范本.docx
- 供配电EPC项目投标方案(技术方案).docx
- JB_T 10295-2014 深松整地联合作业机.pdf
- 教育部2024年专项任务项目(高校辅导员研究)申请评审书《大学生“社恐”现象的心理机制与有效应对研究 》.docx VIP
- GB∕T 15115-2024 压铸铝合金GB∕T 15115-2024 压铸铝合金.pdf
- 第六届(2024年)“信用电力”知识竞赛活动总试题库-上(单选题汇总).docx
文档评论(0)