PTA 6-143 密码转换

输入一串由大小写字母组成的明文字符串(无空格,最多60个字符),将明文每个字母循环右移5位,形成密文。请编程完成加密过程。

函数接口定义:

其中 a 存储明文和 b 存储密文。

裁判测试程序样例:

输入样例:

abcXYZ

输出样例:

fghCDE

思路:

  1. 变量i用来迭代遍历字符数组
  2. 为小写字母,减去小写字母'a'的ASCII值,再加上5,然后对26取余,得到一个新的值,得到的新值加上小写字母'a'的ASCII值,并将结果存储在b[i]中
  3. 为大写字母,同
  4. 将最后一个元素b[i]设置为空字符'\0',表示字符串的结束
void encode(char a[],char b[])
{
    int i=0;
    while(a[i]!='\0')
    {
        if(a[i]>='a' && a[i]<='z')
            b[i]=(a[i]-'a'+5)%26+'a';
        else if(a[i]>='A' && a[i]<='Z')
            b[i]=(a[i]-'A'+5)%26+'A';
        i++;
    }
    b[i]='\0';
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值