如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
PAGE\*MERGEFORMAT28海南大学信息科学技术学院数据结构课程设计报告设计题目:简易文本编辑器专业班级:通信三班姓名:代亮亮学号:20111613310076指导教师:吴哲晖目录需求分析设计要求概要设计详细设计运行结果心得体会参考文献1.需求分析:在当今的消息快速发展的年代,利用网络来传递消息已经是消息传播的唯一途径,而对一个文本的修改是我们每天都在做的事,在这广域的消息里快速的提取出对自己有用的部分,因此我设计了一个简易的文本编辑器,能够提供查找功能,替换功能。2.概要设计:为了更有效的进行查找功能,该编辑器运用了链式存储,该存储结构的特点是逻辑关系相邻的两个元素在物理位置上并不相邻,并将输入的文本分为一个一个的链块,这样,就能大大加快了查找的元素的速度。输入并显示文本信息。在文本中对某些元素进行查找,对查找的元素替换。显示替换元素的位置。显示元素替换后的文本。退出。3.详细设计:3.1程序模块说明3.1.1程序模块为了更方便地完成字符串的查找,此程序采用串的块链式存储结构存储方式。通过主模块调用四个小模块完成文本编辑的各种功能。用户可在主模块上循环对程序进行操作。主模块查找模块替换模块编辑文本信息退出模块3.1.2模块功能说明1.主模块:用户可编辑任一文档,输入要在文本中查找的信息。初始化一个字符串,并用串的块链式存储结构存储。2.编辑文本信息:将用户编辑的文本信息分行输出来,并输出字符串的长度和行数。3.查找模块:遍历整个文本,查找字符串在串中的位置,并输出其所在位置,直到遍历完整个文本结束。4.替换模块:先查找你要替换的字符所在位置,然后根据用户选择是否替换该字符。5.退出模块:退出程序,等待用户下次重行运行该程序。3.2程序流程图说明3.2.1主函数流程图开始输入命令命令替换退出查找结束图2.1.主程序流程图用户可根据此函数输入想要进行的操作来实现其相应的编辑文本信息、查找字符在文本中的所在位置、替换文本中的字符串及查看当前文本的字符数以及行数的信息等一系列功能。开始3.2.2显示模块流程图输出文档的长度和行数并输出字符串统计文档的长度和行数初始化该文档用块链储存结构储存输入一个新的文档结束图2.2显示模块流程图此模块主要实现用户所编辑的文本信息的行数和字符总个数,以及输出文本的字符信息。显示出用户所编辑的文本信息,并输出到屏幕上,为满足用户需求,此模块可循环操作。3.2.3查找模块流程图图2.3查找流程图此模块主要是完成字符串的查找以及替换文本中的字符信息等功能。查找字符串主要是通过将所查找的字符串和主串开始从第一个字符开始比较,如果相同,比较下一个字符,否则将指向当前字符串中的字符指针向前移动已比较字符个数个单位,并且在想后移一个字符,然后再从头开始和和所查找字符穿一一比较。查找成功则返回字符所在位置并输出,接着继续进行下一轮查找,一直循环到将文本中信息读完为止,详见流程图2.3。3.2.4替换模块流程图.图2.4.替换流程图此模块主要是完成字符串的查找以及替换文本中的字符信息等功能。查找字符串主要是通过将所查找的字符串和主串开始从第一个字符开始比较,如果相同,比较下一个字符,否则将指向当前字符串中的字符指针向前移动已比较字符个数个单位,并且在想后移一个字符,然后再从头开始和和所查找字符穿一一比较。查找成功则返回字符所在位置并输出,接着继续进行下一轮查找,一直循环到将文本中信息读完为止。替换功能是在查找的基础上进行的,即也就是先查找到要替换的词的位置,然后根据用户选择在此位置是否替换,同样也是一直循环到读完整个文本信息为止。详见流程图2。4。3.2.5将文本初始化图2.5初始化文本信息将文本信息初始化到用块链式存储的串中4函数的描述4.1串的初始化初始化一个空串,然后将输入的文本信息存储到此串中,因为这是采用的块链式存储,用户可以自定义行的大小即一个节点存储的字符串个数,所申请的总的节点数也就是字符的行数。4.2查找函数查找字符串主要是通过将所查找的字符串和主串开始从第一个字符开始比较,如果相同,用for循环比较下一个字符,不同则将指向当前字符串中的字符指针向前移动已比较字符个数个单位,并且再向后移一个字符,然后再从头开始和和所查找字符穿一一比较。查找成功则返回字符所在位置并输出,接着继续进行下一轮查找,一直循环到将文本中信息读完为止。4.3替换函数替换功能是