3335 - 例题5-11 译密码
为使电文保密,往往按照一定的规律将其转换成密码,收报人再按照约定的规律将其译成原文。例如,某次发报时采用的密码规律为:
将字母A变成字母E,a变成e,即变成其后的第4个字母,W(w)变成A(a),X(x)变成B(b), Y(y)变成C(c),Z(z)变成D(d),其规律如下图所示:

字母按照此规律转换,非字母字符保持原状不变,如:
China!按此规律将转换为Glmre!
要求从键盘输入一行字符,输出其相应的密码。
题目输入
可以包含空格等特殊符号的一行字符(以回车结束)。
题目输出
加密后的字符序列,末尾输出换行。
输入/输出样例
题目输入
China!
题目输出
Glmre!
C++解答
#include<iostream> #include<cstring> using namespace std; char s[100000]; int main() { cin.getline(s,100000); int lon=strlen(s); for (int i=0; i<lon; i++) { if ((s[i]>='a'&&s[i]<='z') || (s[i]>='A'&&s[i]<='Z')) { s[i]+=4; if (s[i]>'Z' && s[i]<='Z'+4 || s[i]>'z') s[i]-=26; } cout<<s[i]; } cout<<endl; return 0; }