- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用字符串实现一个简单的行编辑器
学生姓名:刘慧 指导老师:易建勋
摘 要 本课程设计主要解决在文本编辑中,对行编辑的问题,通过字符串完善对文本的编辑,实现对文本的查找、替换、和修改数据。在本课程设计中,系统开发平台为Windows2000,程序设计语言为C语言,程序运行平台为Windws 98/2000/XP。在程序设计中采用了字符串的方法实现对简单的行编辑器。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用在实际中解决问题。
关键词 程序设计;行编辑器; C语言;
1 引 言
对于日常生活中的文本编辑来说,行编器是一个很重要的问题,文本的完善关系到文件做出的完美,决定了人们在编辑文本的时效率。一个好的用字符串实现的行编辑可以大大的提高人们办公效率。
1.1 课题背景
行编辑器是文本编辑器的一种,针对行进行编辑。现在看来当然非常地老式,这种编辑器起源于操作员还使用电传打字机的年代,也就是一个打印机连着键盘,因为没有显示屏,也就无法在文档中移动光标。行编辑器只能从事最基本的文本输入与输出。输入、编辑、文档显示并不能同步地进行。一般而言,用户无法直接输入文本,而只能在文本终端上通过简要的命令,对已有文档进行添加或编写。命令和文本,以及编辑器的相应输出,会根据他们的输入顺序,从底部开始逐一显示。虽然命令一般会显示被修改的行,但如果要将行连同文档中的上下文一起显示,则需要另外单独的命令。
现在常见的编辑器,都是通过移动光标,来选取要编辑的文本段落,与此不同的是,行编辑器只能对“当前行”进行编辑。一般也可在行内进行上下文匹配,或者选择特定行,以决定哪部分文档将被编辑或显示。当然,这些编辑每次都只能针对一行。行编辑器就只能一行一行的编辑,不能出错,一出错就得重来数据结构是在整个计算机科学与技术领域上广泛被使用的术语。它用来反映一个数据的内部构成,即一个数据由那些成分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排。数据结构是数据存在的形式。?数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。?数据结构课程的主要目的是介绍一些常用的数据结构,阐明数据结构内在的逻辑关系,讨论它们在计算机中的存储表示,并结合各种数据结构,讨论对它们实行的各种运算的实现算法。生活中的例子,比如现在要做一个考试系统,要描述每个考生的信息,有姓名、性别、考号等,全部这些信息就构成一个小数据结构,每个考生有他自己的数据结构,这些结构要如何存放在计算机中,各个结构之间是什么关系,对整体需要哪些操作,比如查询、删除,怎样存储会使这样的操作效率更高,这些就是数据结构要解决的问题。
图1-1
1.3课程设计内容
本课程设计是用字符串实现一个简单的行编辑器,其中包括字符的按行录入及储存文件内容的显示、文件内容的查找、文件内容的替换、文件的修改
图1-2 用字符串实现行编辑器
2 设计思路与方案
2.1设计思路
字符串数据类型是建模在形式字符串的想法上的数据类型。字符串是几乎在所有编程语言中可以实现的非常重要和有用的数据类型。在某些语言中它们可作为基本类型获得,在另一些语言中作为复合类型获得。多数高级语言的语法允许通常用某种方式引用起来的字符串来表示字符串数据类型的实例;这种元字符串叫做“文本”或“字符串文本”。封装在一起。
尽管形式字符串可以有任意有限的长度,实际语言的字符串的长度经常被限制到一个人工极大值。一般的说,有两种类型的字符串数据类型: “定长字符串”,它有固定的极大长度并且不管是否达到了这个极大值都使用同样数量的内存;和“变长字符串”,它的长度不是专断固定的并且依赖于实际的大小使用可变数量的内存。在现代编程语言中的多数字符串是变长字符串。尽管叫这个名字,所有变长字符串还是在长度上有个极限,一般的说这个极限只依赖于可获得的内存的数量。
一个简单的字符串操作是“连接”:也就是说先写一个字符串S,随后在后面再写一个T得到ST这样一个过程。 其它的常见操作包括在一个长字符串中搜索一个子串,排列一组字符串以及分析一个字符串。因为存在如此多的字符串应用方式,所以相应地有许多权衡了不同应用的相关算法。 高级的字符串算法通常使用包括后向树和有限状态机在内的复杂机制和数据结构。
因此我们使用字符串思想简单的行编辑器,更好地实现其可读性,从而使工作学习中更快捷更方便实现文本的编辑。行编辑器只能从事最基本的文本输入与输出。输入、编辑、文档显示并不能同步地进行。一般而言,用户无法直接输入文本,而只能在文本终端上通过简
文档评论(0)