例如,可以按以下规律将电文变为密码:
将字母A变成字母E,a变成e,即变成其后的第4个字母,W变成A,X变成B,Y变成C,Z变成D。
字母按上述规律转换,非字母字符保持原状不变,如"China!“变成"Glmre!”。
从键盘输入一行字符,要求输出其对应的密码。
方法一:
#include <stdio.h>
int main(){
char c;
c=getchar();
while(c!='\n'){
if((c>='a'&&c<='z')||(c>='A'&&c<='Z')){
if((c>='W'&&c<='Z')||(c>='w'&&c<='z')){
c=c-22; // 如果是26个字母中最后4个字母之一就使c-22
}else{
c=c+4; // 如果是前22个字母之一,就使c+4,变成其后4个字母
}
}
printf("%c",c);
c=getchar();
}
printf("\n");
return 0;
}
方法二:
int main(){
char c;
while((c=getchar())!='\n'){
if((c>='A'&&c<='Z')||(c>='a'&&c<='z')){
c=c+4;
if(c>='Z'&&c<='Z'+4||c>'z'){ //如果是26个字母中最后4个字母之一
c=c-26; // C的值改变为26个字母中最前面的4个字母中对应的字母
}
}
printf("%c",c);
}
printf("\n");
return 0;
}