您好,欢迎访问三七文档
摘要本课程设计是实现“简单的行编辑程序”,此编辑程序的主要用处是接受用户从终端输入的程序和数据,并存入用户的数据区。这个行编辑程序需要实现的功能包括:能够设立一个输入缓冲区,用于接受用户输入的一行字符然后逐行存入用户数据区;用户在输入出差错时,并在发现有误时可以及时更改。此程序是一个课程设计的程序,只是模拟的一个简单的行编辑器,如需要真正设计一个行编辑器,那么还需要更为完善的程序。关键词:行编辑;数据结构;VC++;线性结构AbstractThiscourseisdesignedtoachieveasimplelineeditor,themainuseofthiseditingprogramistoacceptinputfromtheterminaluserprogramsanddata,andthedatastoredintheuser'sarea.Thisprogramneedstoachievelineeditingfeaturesinclude:theabilitytosetupaninputbufferforreceivingalineofcharactersenteredbytheuserandstoredintheuserdataareaprogressive;awrywhentheuserinput,andcanbefoundintimetochangethewrongtime.Thisprogramisacurriculumdesignprocess,justsimulateasimplelineeditor,suchastheneedtoreallydesignalineeditor,youalsoneedamorecomprehensiveprogram.Keyword:Lineediting;datastructure;VC++;linearstructure目录1课题设计要求...............................................................................................................11.1课程设计的题目及内容.....................................................................................11.2题目要求............................................................................................................22概要设计.......................................................................................................................32.1存储结构的定义.................................................................................................32.2功能函数.............................................................................................................32.3主函数.................................................................................................................42.4函数设计............................................................................................................42.4.1主函数界面设计......................................................................................42.4.2帮助函数界面设计...................................................................................52.4.3用户操作界面设计...................................................................................53详细设计.....................................................................................................................103.1主函数的设计...................................................................................................103.2帮助函数子程序设计.......................................................................................103.3编辑函数子程序设计........................................................................................113.4活区显示函数子程序设计...............................................................................123.5活区切换函数子函数设计...............................................................................133.6行删除函数子程序设计...................................................................................143.7行插入行数子程序的设计...............................................................................154调试过程及实验结果.................................................................................................164.1调试过程...........................................................................................................164.2实验结果...........................................................................................................164.2.1帮助函数调试结果.................................................................................164.2.2打开文件函数调试结果.........................................................................174.2.3活区显示函数调试结果.........................................................................174.2.4活区切换函数调试结果.........................................................................184.2.5行删除函数调试结果.............................................................................184.2.6行插入函数调试结果.............................................................................195结论.............................................................................................................................20参考文献........................................................................................................................21致谢............................................................................................................................22附录1:用户使用说明.................................................................................................23附录2:源程序.............................................................................................................241课题设计要求1.1课程设计的题目及内容本次课程设计的题目为:简单的行编辑程序。被编辑的文本文件可能很大,全部读入内存的做法既不经济也不总能实现。一种解决办法是逐行地编辑,任何时刻只把待编辑文件的一行放在内存,称为活区。允许输入出错时发现错误并及时更正。试按照这种方法实现一个简单的行编辑程序。通过该题目的设计过程,可以加深理解线性表及栈的逻辑结构、存储结构,掌握线性表及栈上基本运算的实现,进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养学生的动手能力。通过对该软件课设的分析,了解到该课设要求设计一个程序,能够实现行插入、行删除、活区显示、活区切换四项功能。分别设计出四个模块,用主函数集中调度,这样就可以方便快捷的实现各个函数以及整体函数的功能。其具体做法是,先在程序的开始定义一个结构体,其中包括五个数据项,分别是存储每一行元素的项charstring[80]、指向前一个结点的指针structtext*pre、指向后一个结点的指针structtext*next、记录每一行元素的长度intnum以及判断是否删除的标志intflat。当flat=0时,该行被删除;当flat=1时,该行不删除。对文本的编辑,每次都采用先打开文本文件的形式,因为这样可以更直观的看出编辑后文本的变化。实现活区显示的做法是建立一个链表,该链表有20个结点,在一页中放不下的部分为活区,执行p后可以显示出第一页的部分,在之后输入n便可以显示出活区的部分,即第二页的内容。实现活区切换的做
本文标题:行编辑程序说明书
链接地址:https://www.777doc.com/doc-3478933 .html