串的基本演示操作系统课程设计.doc

串的基本演示操作系统课程设计.doc

ID:50795559

大小:342.50 KB

页数:40页

时间:2020-03-14

串的基本演示操作系统课程设计.doc_第1页
串的基本演示操作系统课程设计.doc_第2页
串的基本演示操作系统课程设计.doc_第3页
串的基本演示操作系统课程设计.doc_第4页
串的基本演示操作系统课程设计.doc_第5页
资源描述:

《串的基本演示操作系统课程设计.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计说明书程序设计的主要思路:首先构思所写程序的框架,我在主函数中输入字符串,并调用函数传给定义的顺序串,主函数中运用了do-while语句和switch语句,以此来供使用者选择他所需做的操作。选择所需操作时,调用相应的函数实现功能的应用,输出所需结果。同时为了操作系统的好看,我运用了system()等改变了运行界面的颜色。1、需求分析实现串的基本操作,如:(1)输入两个串,并赋值给顺序串s,t(2)实现将串t复制给串s(3)判断两串的大小(4)求两串的长度(5)实现两串的连接(6)求子串(7)插入(8)删除(9)替换(10)输出串(11)实现串的匹

2、配,如:非模式匹配、简单模式匹配、KMP匹配(12)实现串的逆置(13)查找(14)转换(将大写字母转换为小写字母,小写字母转换为大写字母)2、概要设计2.1主界面设计先设置了一个检测运行环境系统。如图:40为了实现串的各项基本操作,设计了一个含有多个菜单项的主控菜单模式以连接各种基本操作,以方便使用系统。如图:在选项9中我又设计了一个含三个菜单项的小主菜单以连接三个不同的匹配算法。如图:402.2数据结构设计系统采用线性表的顺序存储结构表示,其中存放串字符和串长。此外定义了一个常量max,表示字符串的最大长度。2.3系统功能设计此系统中设置了14个子功

3、能模块,并在第9个功能中又设置了3个子功能模块。(1)将串t复制给串s模块,由strcopy()函数实现。(2)比较两串的大小模块。由strcmp()函数实现。(3)求串的长度模块。由strlength()函数实现。(4)串的查找模块。由chaz()函数实现。(5)求子串模块。由substr()函数实现。(6)串的连接模块。由concat()函数实现。(7)输出串模块。由dis()函数实现。(8)将串s2插入到s1的第i个字符中模块。(9)串的模式匹配模块。可以有三个函数实现:index1()函数、index()函数、kmpindex()函数。(10)从

4、串s中删除第i个字符开始的长度为j的子串模块。由delstr()函数实现。(1140)在s串中将第i个字符开始的j个字符构成的子串用串t替换模块。由repstr()函数实现。(12)串的逆序模块。由ReverseSq()函数实现。(13)串的转换模块。由zhuanh()函数实现。(14)串的修改模块。由change()函数实现。3.模块设计整个程序的流程图。如图:40开始输入串cstr,Str并赋值给串s,t1串t复制给s2判断串的大小3求串长4串的连接5求子串6插入7删除8替换9匹配10输出串11串的逆序12串的查找13串的转换14串的修改根据选择输出

5、相应的运行结果结束stra()函数strcmp()函数strlegth()函数Concat()函数substr()函数insstr()函数delstr()函数repstrt()函数pipei()函数dis()函数ReverseSq()函数chaz()函数zhuanh()函数change()函数选择(n!=0)而选择9中还有一个流程,如图:40选择9选择(n!=0)1非模式匹配2BF模式匹配3KMP模式匹配index1()函数index()函数kmpindex()函数getnext()函数输出相应的结果4.详细设计4.1数据结构设计系统采用串的顺序存储结构

6、(——顺序串)存储串的基本内容。类型定义如下:typedefstruct{chardata[max];40intlength;}sqstring;4.2系统主要模块设计(1)将字符常量cstr,Str赋值给串s,t模块,由stra()函数实现。该模块的算法思想是:用for循环将cstr[i]赋值给s[i];并s.length=i。该模块的算法描述如下:voidstra(sqstring&s,charcstr[])//将字符串常量赋给串s,s为引用型参数{inti;for(i=0;cstr[i]!='';i++)s.data[i]=cstr[i];s.

7、length=i;}(2)将串t复制给串s模块,由strcopy()函数实现。该模块的算法思想是:用for循环将顺序串t的内容复制给顺序串s,并顺序串s的长度为顺序串t的长度。该模块的算法描述如下:sqstringstrcopy(sqstrings,sqstringt)//将串t复制给串s{inti;for(i=0;i

8、符;若st,返回1;s=t,按上述规则继续比较。然后当s和t

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。