习题 5.11 有一行电文,已按下面规律译成密码:A-Z a-z即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。要求编程序将密码译回原文,并输出密码和原文。
程序员文章站
2022-07-14 23:30:21
...
C++程序设计(第三版) 谭浩强 习题5.11 个人设计
习题 5.11 有一行电文,已按下面规律译成密码:A-Z a-z即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。要求编程序将密码译回原文,并输出密码和原文。
代码块:
#include <iostream>
#include <string>
using namespace std;
int main()
{
char upper[26], lower[26], str[30], uc, lc;
int i, j;
for (i=0, uc='A'; i<26; upper[i++]=uc++);
for (i=0, lc='a'; i<26; lower[i++]=lc++);
for (i=0; i<26; cout<<upper[i++]);
cout<<endl;
for (i=0; i<26; cout<<lower[i++]);
cout<<endl;
cout<<"Please enter string: ";
cin>>str;
cout<<"Original string: "<<str<<endl;
for (i=0; i<30; i++)
for (j=0; j<26; j++){
if (str[i]==upper[j]){
str[i]=upper[25-j];
break;
}
else if (str[i]==lower[j]){
str[i]=lower[25-j];
break;
}
}
cout<<"New string: "<<str<<endl;
system("pause");
return 0;
}
上一篇: js中将字符数组转为数值数组
下一篇: python 装饰器二