习题7-7 字符串替换 (15分)
本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:
原字母 对应字母
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(ASCII是90)相差x个字符
那么题目的意思就是
让我们把这个字母转换成与A字符相差为X的字符
A的ASCII是65,它跟Z相差(90-65=25)个数字,那么题目的意思
就是让我们把A转换成" ‘A’+25 ", 即:‘Z’ 。
换言之:输入的大写字母ch到Z的距离,就是A到转换之后的ch的距离(说白了就是把正数第n个转换成倒数第n个、倒数第n个转换成正数第n个 )
实现如下:
#include