c语言课程设计文件加密解密含源代码

  • 格式:docx
  • 大小:24.39 KB
  • 文档页数:20

c语言课程设计文件加密解密含源代

C










实验名称:文件加密解密
院系:软件学院
学号:
日期: 9月3日—9月17日
一:设计题目
1:设计图形用户界面。

2:对文件进行加密并对加密文件进行保存。

3:对加密了的文件进行解密。

二:设计过程
设计过程中遇到的困难和解决方法:
1:不能很好地理解题意(经过老师的讲解)。

2:不知道如何设计加密解密程序(经过翻阅书籍和上网查找资料)
过程:
首先经过学习老师提供的资料了解大致的设计过程并懂得运用一些以前没有学习过的c语言。

先利用文本文件设计出加密解密的主要过程并能运行。

知道如何运用fopen将原文件打开并用fread将原文件内容读出来,然后进行加密设计并将加密的数据用fwrite写进指定的文件中并保存。

然后读出加密的文件并解密并保存。

最后在写出的程序中加入图形用户界面,运用window,box,gotoxy等进行设计。

三:源代码
#include <stdio.h> /* 标准输入、输出函数 */ #include <stdlib.h> /* 标准库函数 */
#include <string.h> //*字符串处理函数 */
#include <ctype.h> /* 字符操作函数 */
#include <conio.h>
#include <dos.h>
#define key_down 80
#define key_up 72
#define key_esc 1
#define key_enter 28
#define SIZE 1
void box(int startx,int starty,int high,int width);
int get_key();
char buf[20*20*4];
/*//////////////////////////////////////////////////////
///////
////////////////////////////////////////////////////////
///////加密解密 */
void fun(char *list,char *sd) /*加密过程*/
{
FILE *fp1,*fp2;
char buf[1000]; /*文件临时存放处*/
register int ch;
fp1=fopen("e:\list.txt","r"); /*用可读方式打开文
件*/
fp2=fopen("e:\sd.txt","w"); /*用可写方式创立一
个文件*/
if(fp1==NULL)
{
printf("cannot open file\n");
exit(1);
}
if(fp2==NULL)
{
printf("cannot build file\n");
exit(1);
}
ch=fgetc(fp1); /*读出打开文件的光标处的一个字符*/
while(!feof(fp1)) /*读出的字符不是最后的字符*/
{
ch=ch<<1; /*加密方法*/
fputc(ch,fp2); /*加密的字符存放在指定的地方*/
ch=fgetc(fp1);
}
rewind(fp2); /*将光标移动到第一个字符前面*/
fread(buf,sizeof(buf),1,fp2); /*从文件的当前位置开始中读取buf中存放的数据*/
printf("%s",buf);
/*fclose(fp1);
fclose(fp2); */。