📄 encryption.cpp
字号:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<ctype.h>
#include<stdlib.h>
int convert(char c)
{
int a;
a=c;
return a;
}
void main()
{
int flag1=0,flag2=0;
double c=0;
FILE *nw,*kw,*sw;
char n_letter,k_letter,s_letter,nwfn[10],kwfn[10],swfn[10];
printf("输入密文所在文件名(miwen.txt):");
scanf("%s",swfn);
printf("输入密钥所在文件名(miyue.txt):");
scanf("%s",kwfn);
printf("输入解密后明文所在文件名(jiemi.txt):");
scanf("%s",nwfn);
sw=fopen(swfn,"r");
if(sw==NULL)
{
printf("CANNOT OPEN SW FILE!");
exit(0);
}
kw=fopen(kwfn,"r");
if(kw==NULL)
{
printf("CANNOT OPEN KW FILE!");
exit(0);
}
nw=fopen(nwfn,"w");
if(nw==NULL)
{
printf("CANNOT OPEN NW FILE!");
exit(0);
}
while(!feof(sw))
{
s_letter=char(fgetc(sw));
if(feof(sw))
break;
k_letter=char(fgetc(kw));
if(feof(kw))
{
rewind(kw);
k_letter=char(fgetc(kw));
}
if(isalpha(k_letter))
{
if(isupper(k_letter))
k_letter=k_letter+32;
}
else
{
if(isspace(k_letter))
k_letter=fgetc(kw);
}
c=fmod((s_letter-97)-(k_letter-97),26);
while(c<0)
{
c=c+26;
}
c=c+97;
n_letter=convert(c);
fputc(n_letter,nw);
}
fclose(sw);
fclose(kw);
fclose(nw);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -