- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
海南大学信息科学技术学院
数据结构课程设计报告
设计题目:简易文本编辑器
专业班级:通信三班
姓
学
名:代亮亮
号:20111613310076
指导教师:吴哲晖
目 录
需求分析
设计要求
概要设计
详细设计
运行结果
心得体会
参考文献
2
主
主模块
查
找
模
块
替
换
模
块
编
辑
文
本
信
退
出
模
块
1.需求分析:
在当今的消息快速发展的年代,利用网络来传递消息已经是消息传播的唯一途径,而对
一个文本的修改是我们每天都在做的事,在这广域的消息里快速的提取出对自己有用的部 分,因此我设计了一个简易的文本编辑器,能够提供查找功能,替换功能。
2.概要设计:
为了更有效的进行查找功能,该编辑器运用了链式存储,该存储结构的特点是逻辑关
系相邻的两个元素在物理位置上并不相邻,并将输入的文本分为一个一个的链块,这样, 就能大大加快了查找的元素的速度。
输入并显示文本信息。
在文本中对某些元素进行查找, 对查找的元素替换。
显示替换元素的位置。
显示元素替换后的文本。 退出。
3.详细设计:
3. 1 程序模块说明
3. 1.1 程序模块
为了更方便地完成字符串的查找,此程序采用串的块链式存储结构存储方 式。通过主模块调用四个小模块完成文本编辑的各种功能。用户可在主模块上 循环对程序进行操作。
息
3
查找替
查找
替换
4
结束
开始
3.1.2
模块功能说明
主模块:用户可编辑任一文档,输入要在文本中查找的信息。初始化一 个字符串,并用串的块链式存储结构存储。
编辑文本信息:将用户编辑的文本信息分行输出来,并输出字符串的长 度和行数。
查找模块:遍历整个文本,查找字符串在串中的位置,并输出其所在位 置,直到遍历完整个文本结束。
替换模块:先查找你要替换的字符所在位置,然后根据用户选择是否替 换该字符。
退出模块:退出程序,等待用户下次重行运行该程序。
3.2 程序流程图说明
3.2.1
主函数流程图
输入命令
命令
退出
输出文档
输出文档的长度和行
数并输出字符串
统计文档的长度和行
数
初始化该文档用块链
储存结构储存
图 2.1.主程序流程图
用户可根据此函数输入想要进行的操作来实现其相应的编辑文本信息、查 找字符在文本中的所在位置、替换文本中的字符串及查看当前文本的字符数以 及行数的信息等一系列功能。
3.2.2
显示模块流程图
开始
输入一个新
的文档
结束
图 2.2 显示模块流程图
5
此模块主要实现用户所编辑的文本信息的行数和字符总个数,以及输出文本 的字符信息。显示出用户所编辑的文本信息,并输出到屏幕上,为满足用户需 求,此模块可循环操作。
6
令q等于T
令q等于T的第一个 字符
Chars[i]表示所查找 字符穿,I=0;
继续比较下一个字 符
串指针指向下一个 字,符查找字符指
针指向第一个
3.2.3
查找模块流程图
开始
文本字符串T、传长 度、所查找字符
chars[m]和替换字符 chars1[m]
q=chars[i]
N
Y
所查找字符比 较完毕
Y
N
N
输出字符所 在位置
串为空
Y
查找完毕, 已无匹配字
符
结束
图 2.3 查找流程图
7
令q等于T的
令q等于T的第一个 字符
Chars[i]表示所查找 字符穿,I=0;
继续比较下一个字 符
串指针指向下一个 字,符查找字符指
针指向第一个
替换字符
此模块主要是完成字符串的查找以及替换文本中的字符信息等功能。查找 字符串主要是通过将所查找的字符串和主串开始从第一个字符开始比较,如果 相同,比较下一个字符,否则将指向当前字符串中的字符指针向前移动已比较 字符个数个单位,并且在想后移一个字符,然后再从头开始和和所查找字符穿 一一比较。查找成功则返回字符所在位置并输出,接着继续进行下一轮查找, 一直循环到将文本中信息读完为止,详见流程图 2.3。
3.2.4
替换模块流程图.
开始
文本字符串T、传长
度、所查找字符
chars[m]和替换字符
chars1[m]
输出字符所 在位置
Y
是否替换该字 符
Y
q=chars[i]
N
Y
所查找字符比 较完毕
N
N
输出替换后 的字符
N
串为空
Y
查找完毕, 已无匹配字
符
结束
8
初始化一
初始化一个串
并把文本信息中前
CHUNKSIZE 个字 符剪切到串中
申请一个新节点
图 2.4. 替换流程图
此模块主要是完成字符串的查找以及替换文本中的字符信息等功能。查找 字符串主要是通过将所查找的字符串和主串开始从第一个字符开始比较,如果 相同,比较下一个字符,否则将指向当前字符串中的字符指针向前移动已比较 字符个数个单位,并且在想后移一个字符,然后再从头开始和和所查找字符穿 一一比较。查找成功则返回字符所在位
文档评论(0)