📄 zhihuan.cpp
字号:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int jiamibox[6]={2,3,1,5,4,6}; //加密置换矩阵
int jiemibox[6]={3,1,2,5,4,6}; //逆置换矩阵
char in[5000]; //定义明文字符串变量
char out[5000]; //定义密文字符串变量
char ch;
void jiami(); //加密函数
void jiemi(); //解密函数
//加密函数
void jiami()
{
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////输入明文字符串
int i=0,l,c,a;
printf("\n输入要加密的明文:");
getchar(ch);
gets(in);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////不足5位补齐5位
a=strlen(in)/6;
for(l=strlen(in);l<=(a+1)*6;l++)
{
in[l]=' ';
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////加密过程
for(i=0;i<5000;i++)
{
c=i/6;
out[jiamibox[i%6]+c*6-1]=in[i];
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////输出
printf("您所需要加密的明文为:");
for(i=0;i<5000;i++)
{
if(in[i]!='\0')
{
printf("%c",in[i]);
}
else
{
break;
}
}
printf("\n");
printf("加密后的密文为:");
for(i=0;i<5000;i++)
{
if(in[i]!='\0')
{
printf("%c",out[i]);
}
else
{
break;
}
}
printf("\n");
}
//解密函数
void jiemi()
{
int i,c;
printf("请输入要解密的密文:");
getchar(ch);
gets(in);
for(i=0;i<5000;i++)
{
c=i/6;
out[jiemibox[i%6]+c*6-1]=in[i];
}
printf("您所需要解密的密文为:");
for(i=0;i<5000;i++)
{
if(in[i]!='\0')
{
printf("%c",in[i]);
}
else
{
break;
}
}
printf("\n");
printf("解密后的明文为:");
for(i=0;i<5000;i++)
{
if(in[i]!='\0')
{
printf("%c",out[i]);
}
else
{
break;
}
}
printf("\n");
}
//主函数
void main()
{
int choose;
list:
printf("*******************************欢迎使用置换密码功能*****************************");
printf("请选择需要进行的操作种类:\n");
printf("1、加密\n");
printf("2、解密\n");
printf("3、退出\n");
scanf("%d",&choose);
if(choose==1)
{
jiami();
goto list;
}
else if(choose==2)
{
jiemi();
goto list;
}
else if(choose==3)
{
exit(1);
}
else
{
printf("您输入的序号不正确,请重新输入:\n");
goto list;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -