电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构课程设计:行编辑程序VIP免费

数据结构课程设计:行编辑程序_第1页
1/11
数据结构课程设计:行编辑程序_第2页
2/11
数据结构课程设计:行编辑程序_第3页
3/11
一、需求分析 由于被编辑的文本文件可能很大,全部读入编辑程序的数据空间(内存)的作法既不经济,也不总能实现。而用行编辑把待编辑文件的一段放进内存,称为活区。本行编辑程序是以每行不超过 320 个字符为前提的。每次编辑会读入 80 行,活区每次只显示 20 行。 1. 该程序要实现以下基本编辑命令和一些相关的命令: (1) 行插入。格式:i<回车><行号><回车><文本><回车>。 将<文本>插入活区第<行号>行之后。 (2) 行删除。格式:d<回车><行号 1>,<行号 2><回车>。 删除活区中第<行号 1>行到第<行号 2>行。 (3) 活区切换。格式:n<回车><页数><回车>。 由于每次从输入文件读入 80 行,而活区每页显示 20 行,而活区切换就是要切换到需编辑的页面上去。 (4) 活区显示。格式 p<回车>。 显示当前要编辑的活区内容。印出的每一行都有一个前置行号和一个空格符,行号固定为 2 位,增量为 1。 (5)清屏。 格式:c<回车>。 (6)获得帮助。格式:h<回车>。 (7)退出。 格式:e<回车>。 二、概要设计 程序结构流程图: 存储结构的定义如下: typedef struct text { char string[80];//存储每一行的元素 struct text *next;//指向后一个节点的指针 int flat;//确定此行是否被删除的标志 初始化 输入命令 i 输入命令 d 输入命令 n 输入命令 p 输入命令 c 输入命令 h 输入命令 e 插入一行内容 删除一行内容 切换活区 显示活区 清屏 显示帮助 信息 退出 }text,*textp; 功能函数: Status Createlist(textp &head); 功能:建立一个80 个节点的链表,是整个活区的大小 int del(textp head); 功能:删除显示的活区的任意一行。 int display(textp &head); 功能:按照每页20 行的规格显示活区的内容。 void freemem(textp &head); 功能:销毁链表,释放内存。 int insert(textp &head); 功能:在显示的活区插入一行内容。 Status SaveFile(textp head,FILE *out); 功能:将活区的内容保存到输出文件。 Status LoadFile(textp head,FILE *fp); 功能:从输入文件读取内容到活区。 void HELP(); 功能:提供命令的格式。 主函数: void main() { 初始化; 输入命令; Switch(c) { case ‘e’: 退出并保存编辑的内容 case ‘p’: 显示活区 case ‘n’: 活区切换 case ‘d’: 删除一行 case ‘i’: 插入一行 case ‘c’:...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构课程设计:行编辑程序

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部