字符串实现一个简单的行编辑器(数据结构课程设计参考样本).docVIP

  • 9
  • 0
  • 约6.52千字
  • 约 20页
  • 2015-10-24 发布于江苏
  • 举报

字符串实现一个简单的行编辑器(数据结构课程设计参考样本).doc

字符串实现一个简单的行编辑器(数据结构课程设计参考样本).doc

用字符串实现一个简单的行编辑器 学生姓名:OOO 指导老师:XXX 摘 要 : 本课程设计主要解决在文本编辑中,对行编辑的问题,通过字符串完善对文本的编辑,实现对文本的查找、替换、和修改数据。在本课程设计中,系统开发平台为Windows2000,程序设计语言为C语言,程序运行平台为Windws 98/2000/XP。在程序设计中采用了字符串的方法实现对简单的行编辑器。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用在实际中解决问题。 关键词 : 程序设计;行编辑器; C语言; 1 引 言 对于日常生活中的文本编辑来说,行编器是一个很重要的问题,文本的完善关系到文件做出的完美,决定了人们在编辑文本的时效率。一个好的用字符串实现的行编辑可以大大的提高人们办公效率。 1.1 课题背景 行编辑器是文本编辑器的一种,针对行进行编辑。现在看来当然非常地老式,这种编辑器起源于操作员还使用电传打字机的年代,也就是一个打印机连着键盘,因为没有显示器,也就无法在文档中移动光标。行编辑器只能从事最简单的输入输出。输入、编辑、文档显示并不能同步地进行。一般而言,用户无法直接输入文本,而只能在文本终端上通过简要的命令,对已有的文档进行添加或编写。命令和文本,以及编辑器的相应输出,会根据他们的输入顺序,从底部开始逐一显示。虽然命令一般会显示被修改的行,但如果要将行连同文档中的上下文显示,则需要另外单独的命令。 现在常见的编辑器,都是通过移动光标,来选取要编辑的文本段落,与此不同的是,行编辑只能对“当前行”进行编辑。一般也可以在行内进行上下文匹配,或者选择特定行,以决定哪部分文档将被编辑或显示。当然,这些编辑每次都只能针对一行。行编辑器就只能一行一行的编辑,不能出错,一出错就得重来。 因此我们用字符串来定义,可以增强行编辑器的应用,增强可读性,加快人们的编辑文本的效率,从而推进社会的发展。这就是其重要意义。 1.2 课程设计目的 数据结构是在整个计算机科学与技术领域上广泛被使用的术语。它用来反映一个数据的内部构成,即一个数据由那些成分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排。数据结构是数据存在的形式。?数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。? 数据结构课程的主要目的是介绍一些常用的数据结构,阐明数据结构内在的逻辑关系,讨论它们在计算机中的存储表示,并结合各种数据结构,讨论对它们实行的各种运算的实现算法。 生活中的例子,比如现在要做一个考试系统,要描述每个考生的信息,有姓名、性别、考号等,全部这些信息就构成一个小数据结构,每个考生有他自己的数据结构,这些结构要如何存放在计算机中,各个结构之间是什么关系,对整体需要哪些操作,比如查询、删除,怎样存储会使这样的操作效率更高,这些就是数据结构要解决的问题。 图1-1 图1.1 实现的数据结构 1.3课程设计内容 本课程设计是用字符串实现一个简单的行编辑器,其中包括字符的按行录入、、 图1.2行编辑器功能框架图 2 设计思路与方案 2.1设计思路 栈是一种先进后出的线性表。它只允许在表的一端进行插入和删除元素,而在另一端不进行任何操作。比如假设栈为q=(a1,a2,…an),那么a1就是栈低元素,an则是栈顶元素。栈中的元素是按照a1,a2,…an的顺序进入的,出栈是可以按照这个次序依次退出。如图2-1 a1,a2,a3,…an 进栈 图2-1 C栈元素进栈 图2-2 C栈元素出栈后进入D栈 最后D栈出栈的元素序列是:a1,a2,…an。与输入序列完全一致。 2.2数据结构设计(还必须写详细些) 栈是一种先进后出的线性表,为了能按照原来的输入顺序输出元素,我在程序中设计了两个栈,第一个栈用来存储输入的字符,然后把第一个栈的元素出栈,并且把出栈的元素放入第二个栈中,这样就实现了出栈是元素的顺序和最开始输入的顺序是一致的了。 首先,构造一个空栈函数InitStack(SqStack S);然后设计输入函数push(SqStack S,char e)和出栈函数pop(SqStack S,

文档评论(0)

1亿VIP精品文档

相关文档