选用一篇英语文章,用其每个字母的行数与列数组成的序列作为该字母的密码。用这个密码对任意给定的一段英文文本进行加密,并且可对任意给定的一段密码进行解密。
功能要求:
1.用户指定选取的英语文章名,读取该文件,作为编码文件。
2.用户指定待加密文件,对其进行加密。原文,加密文件均以文件形式保存。
3.用户指定解密文件,对其随机解密。密文,解密文件均以文件形式保存。
4.注意密码的随机性。即在密文中,一个字母在同一个密码中尽量不要重复多次出现

C语言文件简单加密与解密
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- fuill 2022-01-02 01:55关注
加个写入文件就行了
#include <stdio.h> #include <string.h> int main() { char t[250][250]; int j,h,k,n; printf("输入行数:"); scanf("%d",&n); getchar(); for(j=0;j<n;j++) { gets(t[j]); t[j][strlen(t[j])+1]='\0'; } //puts(t[0]); for(j=0;j<n;j++) { for(h=0;t[j][h]!='\n'&&t[j][h]!='\0';h++) { t[j][h]+=h+1; } } printf("加密后:\n"); for(j=0;j<n;j++) { for(h=0;t[j][h]!='\n'&&t[j][h]!='\0';h++) { printf("%c",t[j][h]); } printf("\n"); } printf("解密后:\n"); for(j=0;j<n;j++) { for(h=0;t[j][h]!='\n'&&t[j][h]!='\0';h++) { printf("%c",t[j][h]-1-h); } printf("\n"); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录