欢迎来到天天文库
浏览记录
ID:48319888
大小:327.97 KB
页数:13页
时间:2020-01-10
《文件移位加密与解密》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、河南理工大学计算机科学与技术学院课程设计报告2010—2011学年第一学期课程名称设计题目学生姓名学号专业班级指导教师2011年01月08日13/13目录l封面……………………………01l设计任务书……………………03l功能设计………………………03l结构流程图……………………05l程序实现代码…………………05l程序设计总结…………………08l个人总结………………………12l致谢……………………………13l参考文献………………………1313/13课程设计任务书题目文件移位加密与解密设计目的1)文件加密;2)文件解密。备注:将某一已知文件的内容(仅限于英文字母
2、)以字符形式读出,根据密钥(用户从键盘输入)将对应字符进行移位操作即可,解密时移动相反。例如:加密:设原文为abcdef,密钥为5,则有abcdef每个字母按字母表向后移动5们(注:z后接a)可得到密文(乱码)fghijkl;对该文件解密:文件内容为fghijk1,密钥为5,则有fghijk1每个字母向前移动5位(注a后接z),可得到原文abcdef。涉及知识点文件指针,文件的读/写,出错检测,分支控制,循环控制,强制类型转换,ASC
3、
4、码表,MS-DOS字符窗口下执行程序。功能设计13/13l设计目的本课程设计的目的是为了保证个人数据资料不被他人非法窃取使用
5、,保护个人的隐私及重要文件!l功能描述本程序主要是对已知文件(为英文字符)通过一定的算法将其转换成非本身的其他英文字母以达到文件加密的目的。整个系统由以下几大功能模块组成。1.主控选择模块此模块是主程序操作界面,供用户进行选择。用户可选择执行加密或解密操作。2.加密模块加密模块主要是完成对文件的加密操作。从外部文件中读入任意一个文件并将它加密并显示出来!3.解密模块解密模块是完成对文件的解密工作,将密文转换为可被识别的明文。从外部文件中读入任意一个文件并将它解密并显示出来!13/13结构流程图13/13程序实现代码#include#in
6、clude#include#defineM1000//预设一个指定文件大小的数字M,方便以后改变voidmain(){FILE*fp;charch,TEXT[M];//M的数值可以根据文件的大小随意改变intch1,n,key;cout<<"文件移位加密与解密"<>TEXT;if((fp=fopen(TEXT,"
7、r"))==NULL){cout<<"openfilefail"<>key;key=key%26;cout<<"加密请输入1,解密请输入2:"<>n;if(n==1)//n=1时,执行加密算法{cout<<"加密结果:";while((ch=fgetc(fp))!=EOF){if(ch>='A'&&ch<='Z')//加密文件内容为A-Z{ch=ch+key;if(ch>'Z')13/13{ch=ch-26;}}if(ch>='a'&&ch<='z')//加密文
8、件内容为a-z{ch1=(int)ch+key;if(ch1>122){ch=(char)(ch1-26);}elsech=(char)ch1;}cout<='A'&&ch<='Z')//解密文件内容为A-Z{ch=ch-key;if(ch<'A')ch=ch+26;}if(ch>='a'&&ch<='z')//解密文件内容为a-z{ch=ch-key;
9、if(ch<'a')ch=ch+26;}cout<10、:13/133.输入密码,如图示:4.
10、:13/133.输入密码,如图示:4.
此文档下载收益归作者所有