7-9 字符串替换 (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.
思路:在ASCII码中,'A’为65,'Z’为90,要符合题给替换规则,只需要将输入字符与’A’的距离变为与’Z’的距离,字符ch的值就变成了90-(ch-65),不使用数组也能完成。
代码:
#include<stdio.h>
int main()
{
char ch;
while((ch=getchar())!='\n'){
if(ch>=65&&ch<=90) ch=90-(ch-65);
putchar(ch);
}
return 0;
}
提交结果: