本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:
原字母 对应字母
A Z
B Y
C X
D W
… …
X C
Y B
Z A
输入格式:
输入在一行中给出一个不超过80个字符、并以回车结束的字符串。
输出格式:
输出在一行中给出替换完成后的字符串。
输入样例:
Only the 11 CAPItaL LeTtERS are replaced.
输出样例:
Lnly the 11 XZKRtaO OeGtVIH are replaced.
解题思路:这题的对调规律很好找就是,(Z的ascll码+A的ascll码)减去字符串里的大写字符的ACSLL码
参考代码
#include<stdio.h>
#include<string.h>
int main(){
char a[105];
gets(a);
int len=strlen(a);
int cnt=0;
for(int i=0;i<len;i++){
if(a[i]>='A' && a[i]<='Z') a[i]=155-a[i];
}
for(int i=0;i<len;i++){
printf("%c",a[i]);
}
return 0;
}