基本信息
源码名称:c++ 凯撒密码(加密、解密示例源码)
源码大小:1.41M
文件格式:.rar
开发语言:C/C++
更新时间:2019-11-26
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
凯撒密码加密解密

int main() {
char str[8];
int model;
int numB;

while (1)
{
cout << "请选择模式" << endl;
cout << "加密1";
cout << "解密2" << endl;
cin >> model;
switch (model)
{
case 1:
cout << "请输入要加密的字符" << endl;
cin >> str;
cout << "请输入改密码算法的偏移数量" << endl;
cin >> numB;
encry(str, numB, model);
cout << endl;
break;
case 2:
cout << "请输入要解密的字符串" << endl;
cin >> str;
cout << "请输入原密码算法的偏移量" << endl;
cin >> numB;
decry(str, numB, model);
cout << endl;
break;
default:
break;
}
break;
}
return 0;
}
void encry(char*strl, int numB, int model)
{
if (model == 1)
{
for (int i = 0; i < strlen(strl); i )
{
if (strl[i] >= 'A'&&strl[i] <= 'Z')
{
strl[i] = ((strl[i] - 'A') numB) % 26 'A';
}
else if (strl[i] >= 'a'&&strl[i] <= 'z')
{
strl[i] = ((strl[i] - 'a') numB) % 26 'a';
}
}
cout << "加密完成:" << strl << endl;
}
}
void decry(char*strl, int numB, int model)
{
if (model == 2)
{
for (int i = 0; i < strlen(strl); i )
{
if (strl[i] >= 'A'&&strl[i] <= 'Z')
{
strl[i] = ((strl[i] - 'A') (26 - numB)) % 26 'A';
}
else if (strl[i] >= 'a'&&strl[i] <= 'z')
{
strl[i] = ((strl[i] - 'a') (26 - numB)) % 26 'a';
}
}
cout << "解密完成:" << strl << endl;
}
}