文档详情

数据结构课程设计报告—文本编辑器.doc

发布:2019-01-02约9千字共27页下载文档
文本预览下载声明
计算机与信息工程系《数据结构》课程设计报告 学号 2014 2014-2015学年 第一学期 《数据结构》 课程设计报告 题目: 基于顺序结构的文本编辑器的设计 专业: 计算机科学与技术 班级: 姓名: 学号: 指导教师: 成绩: 目录 1课程设计内容1 1.1 设计内容1 1.2 设计任务1 1.3 具体要求1 2 概要设计1 2.1 系统的功能简介1 2.2 各个模块之间的主要关系2 3 设计过程及代码分析2 4 设计结果与分析15 5 源程序16 6 总结24 7 致谢24 8 参考文献25 PAGE \* MERGEFORMAT PAGE \* MERGEFORMAT 3 1 课程设计内容 1.1 设计内容 《文本编辑器》主要根据课程设计要求进行设计的,本次课程设计的内容及要求是设计一个文本编辑器,能实现文本内容输入、显示、统计、处理、保存和退出文本编辑器等基本功能,主界面具有图形菜单界面、输入文本、打开文件、显示当前文本内容、进入文本内容统计菜单、进入文本内容处理菜单、保存、退出文本编辑器。 其中文本内容统计菜单包含大小写字母、数字、标点符号、空格、所有字符的统计;文本内容处理菜单包含查找、删除文章中的字符或者字符串,向文章中插入字符或者字符串,从文章中复制字符或者字符串,修改行内容,替换字符或者字符串。 1.2 设计任务 主要利用C语言的文件操作能力设计一个简单的文本编辑器,对于文本编辑器来说,数据结构相对简单,使用一个有较大长度的顺序表即可,在程序中可采用一维数组来实现。使用数组表示的顺序表来存储文本具有简洁、访问方便、输出方便等特点。 1.3 具体要求 明确课程设计的目的,能根据课程设计的要求,查阅相关文献,为完成设计准备必要的知识; 提高学生用数据结构进行程序设计的能力,重点提高用C语言进行文件操作和绘图应用的编程技术水平;初步了解软件开发的一般方法和步骤; 提高撰写技术文档的能力。 2 概要设计 2.1 系统的功能简介 该系统的主要功能是实现文本内容输入、显示、统计、处理、保存。首先,输入文本内容并保存;选择打开文件,打开刚才保存的文件;选择显示当前文章内容,可以预览文件内容;进入文章内容统计菜单,可以对文章中大写字母、小写字母、数字、标点符号、空格、所有字数的统计;进入文章内容处理菜单,查找、删除文章中的字符或者字符串,向文章中插入字符或者字符串,从文章中复制字符或者字符串,修改行内容,替换字符或者字符串。 2.2各个模块之间的主要关系 该程序的功能主要是文本编辑,定义的操作方法是整个程序的核心,各个模块之间的关系是相互联系的。首先,需操作者输入文本内容,打开刚才编辑的文本文件,可以先预览文件内容,然后进入文章内容统计菜单,可以对文章中大写字母、小写字母、数字、标点符号、空格、所有字数的统计;进入文章内容处理菜单,查找、删除文章中的字符或者字符串,向文章中插入字符或者字符串,从文章中复制字符或者字符串,修改行内容,替换字符或者字符串。 只有在上步做出选择后,后面的程序才会接着执行,这便表明它们之间存在着紧密的联系,缺少任何一个模块都将导致程序无法继续执行。要求各个模块之间上下相连,具有紧密相扣的关系。 3 设计过程及代码分析 (1)主函数流程图及运行界面 ①主函数流程图(见图3(1)-A) main( ) 定义变量:Status s=1; int i; for(i=0;iMAX_LEN;i++) // 初始化串 InitString(T[i]); while(s) { Hello(); } 图3(1)-A ②主函数运行界面(见图3(1)-B) 图3(1)-B (2)输入文本流程图及运行界面 void Edit() 定义变量:char c; 获得字符串:c=getchar(); { while(c!=EOF) { fputc(c,sfp); c=getchar(); } fclose(sfp); } ①输入文本流程图(见图3(2)-A) 图3(2)-A ②运行界面(见图3(2)-B) 图3(2)-B 打开文件与显示当前文章内容流程图及运行界面 ①打开文件与显示当前文章内容流程图(见图3(3)-A、B) void Open() 定义变量:int k; while(1) { fgets(str,LINE_LEN,fp); if(feof(fp)) {break;} k=strlen(s
显示全部
相似文档