jiajiemi.cpp
来自「一个十分基本的加解密算法」· C++ 代码 · 共 150 行
CPP
150 行
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
char a[4000];
void jiami();
void jiemi();
void jiemian();
//此程序是用c和c++共同编写,所以首先要求把这个程序看懂,在每一行的后面都加上注释
//然后要求把该程序改为c语言的程序。
//调试通过,调试环境不要求
//主函数 解释cout<< 相当于 printf cin>> 相当于从终端读入输入的字符 endl相当于回车换行
void main()
{
cout<<"***********欢迎使用简易文件加密解密程序***********"<<endl;
jiemian();
}
//加密函数
void jiami()
{
int i,j;
char c;
cout<<"请输入要加密的文字(输入@表示结束,字数2000以内,回车和空格不在加密范围):"<<endl;
for (i=0;i<=4000;i++)
{
a[i]=getch();
if(a[i]=='\r')
cout<<endl;
else
printf("%c",a[i]);
j=i;
if(a[i]=='@')
{
cout<<"确定输入结束么?(Y/N)"<<endl;
c=getch();
if(c=='y'||c=='Y') break;
else i=i-1;
cout<<"请继续输入:"<<endl;
}
}
cout<<endl;
cout<<"你共输入了"<<j<<"个字符,文件的加密版本如下(最后面的?为结尾标志,不属于加密文本):"<<endl;
cout<<endl;
for(i=0;i<=j;i++)
{
if(a[i]=='\r')
cout<<endl;
else{
a[i]=a[i]+1;
cout<<a[i];
}
}
cout<<endl;
cout<<"1.解密上述文件"<<endl;
cout<<"2.返回主选框"<<endl;
cout<<"3.退出程序"<<endl;
cout<<"请输入您的选择(1解密,2返回,其他键退出):"<<endl;
cin>>c;
cout<<"文件的解密版本如下(大写的A为结尾标志,不属于加密文本):"<<endl;
if(c=='1'){
for(i=0;i<=j;i++)
{
if(a[i]=='\r')
cout<<endl;
else{
a[i]=a[i]-1;
cout<<a[i];
}
}
jiemian();
}
else if(c=='2') jiemian();
}
//解密函数
void jiemi()
{
int i,j;
char c;
cout<<"请输入要解密的文字(输入@表示结束,字数2000以内,回车和空格不在加密范围):"<<endl;
for (i=0;i<=4000;i++)
{
a[i]=getch();
if(a[i]=='\r')
cout<<endl;
else
printf("%c",a[i]);
j=i;
if(a[i]=='@')
{
cout<<"确定输入结束么?(Y/N)"<<endl;
c=getch();
if(c=='y'||c=='Y') break;
else i=i-1;
cout<<"请继续输入:"<<endl;
}
}
cout<<endl;
cout<<"你共输入了"<<j<<"个字符,文件的解密版本如下(大写的A为结尾标志,不属于加密文本):"<<endl;
cout<<endl;
for(i=0;i<=j;i++)
{
if(a[i]=='\r')
cout<<endl;
else{
a[i]=a[i]-1;
cout<<a[i];
}
}
cout<<endl;
cout<<"1.加密上述文件"<<endl;
cout<<"2.返回主选框"<<endl;
cout<<"3.退出程序"<<endl;
cout<<"请输入您的选择(1解密,2返回,其他键退出):"<<endl;
cin>>c;
cout<<"文件的解密版本如下(@为结尾标志,不属于解密文本):"<<endl;
if(c=='1'){
for(i=0;i<=j;i++)
{
if(a[i]=='\r')
cout<<endl;
else{
a[i]=a[i]+1;
cout<<a[i];
}
}
jiemian();
}
else if(c=='2') jiemian();
}
//主界面函数
void jiemian()
{
char c;
cout<<"1.加密"<<endl;
cout<<"2.解密"<<endl;
cout<<"3.退出"<<endl;
cout<<endl;
cout<<"请输入您的选择(1加密,2解密,其他键退出):"<<endl;
cin>>c;
if (c=='1') jiami();
else if (c=='2') jiemi();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?