数据结构第二次实验报告.docx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

ATextEditor

ATextEditorImlementation

PAGE

PAGE10

数据结构与算法分析课程设计报告

课题名称: ATextEditorImlementation

提交文档学生姓名: 苟 丁

提交文档学生学号: 0843042229

同组成员名单: 无

指导教师姓名: 孙界平

指导教师评阅成绩:指导教师评阅意见:

.

.

提交报告时间:2010年5 月7 日

实验题目: 带括号的算术表达式求值

实验的目的和要求:

采用C++的ASCII码文件和串函数实现;

熟练掌握串运算的应用;

熟练掌握计算机系统的基本操作方法,了解如何编辑、编译、链接和运行一个C++程序;

上机调试程序,掌握查错、排错使程序能正确运行

实验的环境:

1、硬件环境:联想笔记本电脑,Intel(R)Pentium(R)DualT3400,2GB内存

2、软件环境:WindowsXP 下的MicrosoftVisualStudio2008

算法描述:

具体操作与函数描述

编辑一个文本文件,命名为text.txt.

函数run()提供给用户选择符的输入:w,r,I,d,f,c,q,h,n,p,b,e,g,v.用户可以选择H选择符寻求帮助,得知操作符分别代表的动作。

R代表函数Read()将文本读入缓冲区,缓冲区以前的任何内容都将将消失。

W代表函数Write()将缓冲区的内容写入文本文件。

I代表函数Insert()插入新行,用户可以在适当的提示下键入新行并提供新行。

D代表delete()行数所执行的删除操作,可以删除当前行,并进入下一行。

F代表函数findChar(),用于查找目标行。

C代表函数changLine(),将用户请求的字符串修改成用户请求的替换文本,可选择的是仅在当前行中有效。

Q代表函数quit(),用户执行此命令可以退出编辑。

(10)N代表函数next(),用户可以从当前行移到下一行。

(11)P代表函数pre(),用户可以从当前行移到下一行。

(12)E代表end(),可以移到最后一行。

(13)G代表go(),用户可以指定到选择的行。

(14)V查看缓冲区的全部内测试程序说明:

测试main()如下,主要定义了一行的长度,主要是执行run()函数,实现用户输

入字符选择执行操作的目的。

#includeUtility.h#includeMyList.hintmain(){

constintLG=50;voidrun(char);charinputCh=NULL;

Temp:

cout输入目标文本名字:;cininputname;

cout输出文本名字:;cinoutputname;

ifstreamipf;ipf.open(inputname,ios::in);

if(ipf.fail())

{

cout不能打开文件!!\n;gotoTemp;

return0;

}

charch[LG];while(!ipf.eof())

{

ipf.getline(ch,LG-1);

List.append(ch);

}

ipf.close();countL=List.length();display();

cout你要进行什么操作(输入h获得帮助):;charchr=getchar();

do

{

chr=getchar();if(chr==\n)continue;run();

if(toupper(chr)!=E)cout你要进行什么操作(输入h获得帮助):;

}while((toupper(chr)!=E));

}

流程图如下:

习心

主孛

已让血i_.._,

丸-

源程序清单:

MyLink.h

#ifndefMYLINK_H#defineMYLINK_H#includeiostream#includestringusingnamespacestd;

templateclassElemclassMyLink{public:

MyLink(stringLString,MyLinkElem*prv,MyLinkElem*);MyLink();

voiddisplay();

intfindChar(char*);

voidrepSubChar(char*,char*);

stringLiString;

MyLink*prv;

MyLink*next;

};

templateclassElem

MyLinkElem::MyLink(stringLString,M

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档