ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:1.97MB ,
资源ID:6498618      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6498618.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(堆栈应用题Word文档格式.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

堆栈应用题Word文档格式.docx

1、 bool search(char fileroad,char filename); /寻找指定元素类外的函数函数名称返回类型所含参数实现功能in_word()intchar fileroadchar filename对文件进行输入编辑copy_word()char fileorignlchar fileroad 对文件中的内容进行拷贝creatfile()voidfilestack &fstack1fstack3fstack4创建新文件并备份deletefile() fstack删除文件操作recoverfile() fstack,恢复删除的文件recoverfileroad()char o

2、fileroad复制文件路径undo_moreoperate() fstack1 fstack2 fstack3 fstack4char & opchar froado撤销之前的某步操作undo_operate()撤消操作searchroad()寻找文件路径redo_file()重做操作delete_copyoperate()删除副本(及删除“copy”文件夹里的文件)save()对所有操作进行保存,不可恢复f_operate()无对文件进行操作(三) 用户手册程序运行时,首先提示选择要进行的操作。对于创建文件时,提示输入文件路径以及文件名对于撤消操作时,提示进行撤销上一步还是撤销之前的操作;

3、对于重做操作,提示进行恢复的路径;对于结束所有操作,提示是否保存所有操作。(四) 调试及测试运行实例:(1)创建文件的操作(2)撤销操作(3)重做操作(4)保存所有操作进一步改进(1)目前程序中,主要以建立文件,删除文件以及恢复文件为主要功能,辅以对文件进行编辑。以后可以加入打开文件等其他功能。(2)目前是通过控制台进行操作,并不是很直观,在以后可以借助图形界面(MFC)来实现对文件的操作。附录 源程序(1)f_stack.h#include stringfstreamusing namespace std;enum error_codesuccess,underflow;struct nod

4、e char froad50; /存储文件路径 char fname30; /存储文件名 node * next;class filestackpublic: bool search(char fileroad,char filename) ;private: int count; node * top;filestack:filestack() count=0; top=NULL;bool filestack:empty()const return count=0;error_code filestack:get_top(char fileroad,char filename)const i

5、f(empty() return underflow; else strcpy(fileroad,top-froad); strcpy(filename,top-fname); return success;push(char fileroad,char filename) node *s=new node; strcpy(s-froad,fileroad);fname,filename); s-next=NULL;next=top; top=s; count+; return success;pop() node *u=top; top=top-next; delete u; count-;

6、pop(char fileroad,char filename) char croad80; strcpy(croad,fileroad); strcat(croad,filename); filestack f1; else char fr50,frc50,fn30; get_top(fr,fn); strcpy(frc,fr); if(strcmp(strcat(frc,fn),croad)=0) pop(); else while(strcmp(strcat(frc,fn),croad)!=0) f1.push(fr,fn); get_top(fr,fn); strcpy(frc,fr)

7、; while(!f1.empty() f1.get_top(fr,fn); push(fr,fn); f1.pop();/寻找指定文件search(char fileroad,char filename) return false; return true; return false;/析构函数/对文件进行文字编辑int in_word(char fileroad,char filename) char c=A; char frc50; strcpy(frc,fileroad); /拷贝文件路径 char fname80; strcpy(fname,strcat(frc,filename);

8、 ofstream outfile(fname,ios:out|ios:trunc); /打开相应文件 if(!outfile) cerropen error!endl; exit(1); coutc; outfile outfile.close(); return 0;/对文件中的内容进行拷贝int copy_word(char fileorignl,char filename,char fileroad )/创建新文件并备份void creatfile(char fileroad,char filename,filestack & fstack1,filestack & fstack3,f

9、ilestack & fstack4) /指定备份路径 char fr80=copy/ char frc80= char frs80=redosave/ char frsc180= char frsc280= char frsr80=redosaveroad/ char frscr180= char frscr280= /创建文件 ofstream outfile1(strcat(croad,filename),ios:outfile1) outfile1.close(); /备份到指定路径 ofstream outfile2(strcat(fr,filename),ios:outfile2)

10、copy error! outfile2.close(); /对所有创建操作建立映像 ofstream outfile3(strcat(frs,filename),ios:outfile3)savecopy error! outfile3.close(); /对创建文件的路径进行保存 ofstream outfile4(strcat(frsr,filename),ios:outfile4) char c50; int i=0; while(fileroadi!0 ci=fileroadi; i+; ci= i=0; while (ci! outfile4ci; outfile4.close()

11、;成功建立(更新)fileroadfilenamechoice; switch(choice) case N coutfileroad; strcpy(froado,fileroad);请输入要撤销之前创建的文件名:filename; deletefile(fstack1,fileroad,filename); deletefile(fstack3,sfile,filename); deletefile(fstack4,srfile,filename); fstack2.push(ofile,filename); op=请输入要恢复之前删除的文件路径:请输入要恢复之前删除的文件名: recov

12、erfile(fstack1,fileroad,filename);已成功恢复文件 recoverfile(fstack3,sfile,filename); recoverfileroad(fstack4,fileroad,srfile,filename); fstack2.pop(ofile,filename);请确认输入编号是否正确 while(choice!/撤消操作void undo_operate(filestack &O请确认撤消操作!撤销上一步键入O,其它请键入Mn请输入: if(op= fstack1.get_top(fileroad,filename); strcpy(fro

13、ado,fileroad); deletefile(fstack1,fileroad,filename); deletefile(fstack3,sfile,filename); deletefile(fstack4,srfile,filename); fstack2.push(ofile,filename); cout成功删除文件! ; op= else fstack2.get_top(fileroad,filename); recoverfile(fstack1,froado,filename); recoverfile(fstack3,sfile,filename); recoverfileroad(fstack4,froado,srfile,filename); fstack2.pop();

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2