(PTA)字符串替换 (15分)

Author:MiFkuF
微电子科学与工程 理科男
网上已经有了相似代码,但大多数我都看不懂,便自己写了这个代码,希望能够帮助到你。

#输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

原字母 对应字母
A Z
B Y
C X
D W
X C
U B
Z A

输入格式:

输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

输出格式:

输出在一行中给出替换完成后的字符串。

输入样例:

Only the 11 CAPItaL LeTtERS are replaced.

输出样例:

Lnly the 11 XZKRtaO OeGtVIH are replaced.

代码

#include
#include
int main()
{
  int b[26];     //用于储存26个英文字母
  char a[81];    //81是防止溢出
  for (i = 0; i < 26; i++)              //输入26个字母在b[]中
 {
  b[i] = m;
  m++;
 }
 gets_s(a);                            //输入句子
 for (j = 0; j < 81; j++)
 {
   for (i = 0; i < 26; i++)
   {
      if ((a[j] + b[i]) == 155)     //通过规律我们能够发现其ASCII码'A'+'Z'='B'+'Y'=...=155
     {
      a[j] = b[i];
      break;                       //breakw为了更快结束循环
     }
   }
 }
 for (j = 0; j < 81; j++)
 {
  printf("%c", a[j]);
 }
 return 0}

你可能感兴趣的:(PTA,c++)