(完整word版)电子系c语言程序设计加密解密

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告

课程设计名称: C语言程序设计

指导教师:

学生:

学号:

学院:电子信息工程学院

完成时间: 2011年9月27日

嘉应学院电子信息工程学院

1

C语言课程设计说明书

目录

1 需求分析 (1)

2总体设计 (2)

3详细设计 (3)

3.1 换位加密流程图 (3)

3.2 换位解密流程图 (4)

3.3 替代加密流程图 (5)

3.4 替代解密流程图 (6)

4调试与测试 (8)

5测试结果 (8)

6附录 (11)

I

1 需求分析

问题描述(实验指导书中已经给出)

①数据的输入和输出;要求使用文件操作。文件(明文,仅限于英文字母)存放在某一已知文本文件中,加密后的文件(密文)存放在另一文件中。

②换位加密和解密:

加密:根据密钥(即移位位数,用户从键盘输入)将对应字符进行移位操作,输出密文;解密:输入密文后再输入移位位数则可输出明文;

③凯撒加密和解密:

加密:根据密钥(即移位位数,用户从键盘输入)将对应字符进行移位操作,输出密文;解密:输入密文后再输入移位位数则可输出明文;

④统计单词的个数;

⑤退出。

2总体设计

(程序设计总流程图,可以画带流程线的流程图)

此处只需要写出一个流程图就可以了,就是总的那个流程图,请规范的画图。不需要分出2.1和2.2.

开始

welcome()

caidan()

transpen( ); transpde(

)

caesaren(

)

caesarde() mingwent miwentongji(byebye()

3详细设计

(各模块功能说明,如函数功能、入口及出口参数说明,函数调用关系描述等

这块大家问题最多了,这里不是写程序代码,而是写流程图里面各个主要函数的作用,函数之间关系的说明。

以第1题为例,此处应为:

3.1 换位加密流程图

流程图

(对流程图加以说明。可以把关键语句放在此处,加以注释说明) 建立mingwen.txt 和miwen.txt 文件

输入密钥n

输入明文到数组r

k=strlen(r)j 计算数组r 长度

for i=0 to k

关闭并保存mingwen.txt 文件

打开mingwen.txt 文件

space(h,r) 将明文去空格并放到数组h 中

m=strlen(h) 计算数组h 长度

m%n==0

是 否

hang=m/n hang=m/n+1 j=0

for i=0 to hang for i=m to hang*n

z=0

fputc(r[i],mingwen) 将明文存放到mingwen.txt

文件中

for j=0 to n h[i]='a'+j j++

for i=0 to hang

zl[i][j]=h[z] z++ for j=o to n

zl[i][j]=h[z]

z++

for i=0 to n

for j=0 to hang

he[z]=zl[j][i]

输出he[z]

z++

fputc(zl[j][i],miwen)

fclose() 关闭并保存mingwen.txt文件

fclose() 关闭并保存miwen.txt文件

清屏返回菜单

3.2 换位解密流程图

流程图

(对流程图加以说明。可以把关键语句放在此处,加以注释说明)建立mingwen.txt和miwen.txt文件

输入密钥n

输入明文到数组r

k=strlen(r)j 计算数组r长度

for i=0 to k

fputc(r[i],miwen) 将密文存放到miwen.txt文件

关闭并保存miwen.txt文件

打开miwen.txt文件

space(h,r) 将明文去空格并放到数组h中

m=strlen(h) 计算数组h长度

m%n==0

是 否

hang=m/n hang=m/n+1 j=0

for i=0 to n for i=m to hang*n

z=0

for i=0 to hang

fclose(mingwen) 关闭并保存mingwen.txt 文件

fclose(miwen) 关闭并保存miwen.txt 文件

清屏 返回菜单

3.3 替代加密流程图

流程图

(对流程图加以说明。可以把关键语句放在此处,加以注释说明)

建立mingwen.txt 和miwen.txt 文件

ch=getchar() 接收回车字符

Ch=getchar() 开始输入明文

当ch!='\n'

fclose(mingwen)) 关闭并保存mingwen.txt 文件

for j=0 to hang h[i]='a'+j j++

for i=0 to n

zl[i][j]=h[z] z++ for j=o to hang

zl[i][j]=h[z]

z++

for j=0 to n

he[z]=zl[j][i]

输出he[z]

z++

fputc(zl[j][i],mingwen)

fputc(ch,mingwen) 将明文放到mingwen.txt 文件中

ch=getchar()

相关文档
最新文档