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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

10大3张苏阳 27.docx

1、10大3 张苏阳 27苏 州 技 师 学 院信 息 工 程 系课程设计报告2010 2011学年第 二 学期课程名称 C语言课程设计 设计题目 文件加密 学生姓名 张苏阳 学 号 27 专业班级 信息工程系10-3班 指导教师 潘毅 2011 年 6 月21日目录1. 设计任务书21.1 题目与要求21.2 本程序涉及的知识点22功能设计22. 1算法设计22.2部分模块流程图23. 程序代码设计43.1输入函数43.2输出函数54. C程序设计总结65.致谢6参考文献61. 设计任务书1.1 题目与要求我计划写文件加密,某公司采用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则

2、如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。通过本课程设计,深入了解dos及其目录文件系统,并初步具备完成大型汇编程序的能力,巩固汇编语言知识,提高学生理论与实践相结合的能力。1.2 本程序涉及的知识点struct password /*加密方法*/ char ps10; /*加密字符串*/ long l; /*加密间隔字节数*/ long wd; /*加密的字节数*/加密void encode();解密void decode();文件比较void cmptxt();2功能设计2. 1算法设计1、本程序实现的功能要求:利用if语句完成所

3、示的主菜单。建立程序框架显示当前目录文件名显示文件内容进行文件加密显示加密文件内容2、进入第一步出现如下信息:分析设计要求,熟悉相关知识第二步:建立程序框架,每个字符命令对应一个子程序第三步:依次编写各子程序汇编语言代码第四步:汇编,连接,调试。2.2、部分模块流程图2. 程序代码设计3.1输入函数改文件名 提示:old filename: 键入文件全名,若该文件存在,则 提示:new filename:键入新文件全名后,磁盘文件改名; 若不存在,则提示:file not found! 显示文件内容 提示:filename:键入文件全名,若该文件不存在,则提示: file not found!

4、;若该文件存在,显示该文件内容。 加密文件内容 提示:filename:键入文件全名,若该文件不存在,则提示: file not found!;若该文件存在,则提示:s-code:,键入密码( 数字或ascll码),提示:new filename:键入新文件全名后, 将文件内容顺序与密码进行异或操作,异或后的文件内容存入新文件。 显示加密文件内容 提示:filename:键入文件全名,若该文件不存在,则提示: file not found!;若该文件存在,则提示:s-code:,键入密码, 显示该文件内容与密码异或后的内容。 退出程序,返回dos提示符状态。#include #include

5、#include #include struct password/*加密方法*/ char ps10;/*加密字符串*/ long l;/*加密间隔字节数*/ long wd;/*加密的字节数*/ password; char *s=new char100; void set() coutendlpassword.ps; coutendlpassword.l; coutendlpassword.wd; void printtxt()/*显示文件 */ ifstream fs1(s,ios:nocreate);/以输入方式打开文件 ifstream fs2(result.txt); ifstr

6、eam fs3(recall.txt); char c; coutendl原始文件:; if(!fs1) couts; else while(fs1.get() coutc; coutendl; coutendl加密文件:; while(fs2.get() coutc; coutendl; coutendl解密文件:; while(fs3.get() coutc; coutendl; fs1.close();/关闭文件 fs2.close(); fs3.close(); void encode()/*加密*/ int n=strlen(password.ps); char N; char c;

7、 ofstream out(result.txt); ifstream fs(s,ios:nocreate); if(!fs) /文件为空则为对字符串s进行加密 int m=strlen(s); for(int i=0;im;i+) if(i%password.l=0) static int a=0; if(a122) N=N%122; out.put(N); a+; else out.put(si); else out.put(si); else/文件非空,为对文件进行加密 for(int i=0;fs.get();i+) if(i%password.l=0) static int a=0;

8、 if(a122) N=N%122; out.put(N); a+; else out.put(N); else out.put(N); coutendl加密成功!endl; out.close(); fs.close(); void cmptxt()/*文件比较*/ ifstream fs1(s,ios:nocreate); ifstream fs2(recall.txt); char c1,c2; if(!fs1) /fs1文件空,为对字符串和fs2之间比较 for(int i=0;si;i+) fs2.get(c2); if(si!=c2) /若出现不同的字符则解密失败 coutendl

9、错误!解密失败!endl;4. C程序设计总结本程序在刚开始调试时有许多错误,但在我的努力及同学的帮助下都被一一克服,现在在操作本程序时可根据提示进行相关操作,能正确输出结果。在刚开始的几次调试中曾经出现过密码不能输入的情况;不能输入过多的密码情况;还有不能识别密码等情况。经过我的努力及同学的帮助,这些问题得到克服,并且使程序的功能也得到了一定的完善。现在它能对出错的题目发出报警声,并且给出正确答案。最后还能分别输出对错的题数及所得分数。在这次设计过程中,不仅复习课本上所学知识,还通过查资料、问同学学到了课本上没有的知识。从而启发我,要想写好程序,在写好课本知识的同时还需要多读和专业有关的一些书籍,同时还需要多动脑子,尽量把所学的知识综合起来应用,力争写出完美的程序。除此之外,我还得到了一些有用的教训:写程序时必须要细心,不能输错一个字符标点,就连全角半角也得注意。在修改时要有耐心,编译出错后必须逐个错误去改正,绝不能心急浮躁,否则修改之后还会有新的错误。5. 致谢能够完成这次课程设计必须感谢C语言课程老师潘毅(是他教会了我C语言这门课程)、林亚洲同学(他帮我修改了几处重要错误,同时启发我完善了该程序的功能)。参考文献(1)、(2)、贾宗璞、许合利,C语言程序设计,江苏:中国矿业大学出版社,2007.6

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1