嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在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;
}
}