zoukankan      html  css  js  c++  java
  • 问题 D: 习题6-12 解密

    问题 D: 习题6-12 解密

    时间限制: 1 Sec  内存限制: 12 MB
    献花: 197  解决: 171
    [献花][花圈][TK题库]

    题目描述

    有一行电文,已按如下规律译成密码:

    A-->Z        a-->z

    B-->Y        b-->y

    C-->X        c-->x

    ......          ......

    即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母,非字母字符不变。要求根据密码译回原文,并输出。

    输入

    输入一行密文

    输出

    解密后的原文,单独占一行。

    样例输入

    ZYX123zyx
    

    样例输出

    ABC123abc

    参考代码:

    #include<stdio.h>
    #include<string.h>
    int main(){
      char a[100];
      gets(a);
      int cnt=strlen(a);
      for(int i=0;i<cnt;i++){
        if(a[i]>='A'&&a[i]<='Z'){  //判断a[i]是否为大写字母
          a[i]='A'+'Z'-a[i];    //第i个字母变成第(26-i+1)个字母
        }
        if(a[i]>='a'&&a[i]<='z'){
          a[i]='a'+'z'-a[i];
        }
      }
      puts(a);
      return 0;
    }

     
  • 相关阅读:
    Direct2D 变换
    DWrite 文字
    Windows基础窗体编程
    .net delegate(委托类型)
    详说new和overrid区别
    类与结构区别
    IIS的Gzip压缩
    ASP.NET 状态服务和session丢失问题解决方案
    Fiddler使用
    Castle系列教程(转)
  • 原文地址:https://www.cnblogs.com/zhhjthing/p/7756794.html
Copyright © 2011-2022 走看看