0
点赞
收藏
分享

微信扫一扫

小新同学爱加密

一ke大白菜 2022-03-19 阅读 85
c语言

小新同学的数学成绩比较好,很多信息内容都爱转换成数字保存起来,今天他要对一串由英文大小写字母组成的字符串进行加密,加密方法是:对于大写字母,如果ASCII编码是偶数对应的密文为编码值除以2,如果是奇数密文为字符的 ASCII编码值,如果是小写字母对应的密文为ASCII编码值乘以2。现在给出加密后的字符串,请恢复原字符串内容。 数据范围:原文字符串长度不超过1000

输入格式:

输入一行由数字字符组成的密文内容。

输出格式:

输出原文字符串的内容。

输入样例:

6533198

输出样例:

ABc
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define N 10010

int main()
{
    char s[N];
    int i=0,x;
    gets(s);
    while(s[i]!=0)
    {
        x=(s[i]-'0')*10+(s[i+1]-'0');//读取两位
        i+=2;
        if(x<33)
        {
            x=x*10+(s[i]-'0');//读取三位
            i++;
        }
        if(x>=33&&x<=45)//大写偶数
            printf("%c",x*2);
        else if(x>=65&&x<=89)//大写奇数
            printf("%c",x);
        else if(x>=194&&x<=244)//小写字母
            printf("%c",x/2);
    }
    return 0;
}

 

举报

相关推荐

小爱同学接入chatGPT

0 条评论