问题标题: 酷町堂:2855

0
0
已解决
尹宗鑫
尹宗鑫
新手守护
新手守护

2855   字符串擦除字符并加密

题目描述 Description

给出一个全部由字母和数字组成的字符串。请先将这个字符串中的非字母字符全部擦除。然后要将字符串按如下规则加密,

1,所有字母全部转化为小写

2,如果字母是'a'到'y',则转化为'b'到'z'

3,如果字母是'z',则转化为'a'

输出加密之后的字符串。

输入描述 Input Description

一个原始字符串

输出描述 Output Description

处理和加密之后的字符串

样例输入 Sample Input

 

1123abcdEFGXYZ123

样例输出 Sample Output

 

bcdefghyza


0
已采纳
郑怡翔
郑怡翔
初级天翼
初级天翼

Hello!!!

这道题主要就是判断输出。

首先呢,咱们先把字符串输入(这里 我就不讲了)

然后,咱们直接进行2,3步骤(第1步骤待会儿讲)

for(int i=0;i<a.size();i++)
        if(a[i]>='A'&&a[i]<='Z')
            a[i]+=32;//全变成小写的
for(int i=0;i<a.size();i++)
    {
        if(a[i]=='z')//如果是z
            a[i]='a';//变成a
        else if(a[i]>='a'&&a[i]<='y')//else不要忘
            a[i]+=1;//++也可以
    }

然后再进行第1步骤,判断循环输出:

for(int i=0;i<a.size();i++)
{
    if(a[i]>='a'&&a[i]<='z')
        cout<<a[i];//如果是小写字母就输出,不是就不判断不输出
}

勿举报,没有 整段代码

0
0
杨陈卓
杨陈卓
新手天翼
新手天翼
    循环(int i=0;i<l;i++)
    {
        如果(a[i]<'A'||(a[i]>'Z'&&a[i]<'a')||a[i]>'z')
            continue;
        如果(a[i]>='A'&&a[i]<='Z')
            a[i]+=32;
        如果(a[i]>='a'&&a[i]<='y')
            a[i]++;
        否则 如果(a[i]=='z')
            a[i]='a';
        输出<<a[i];
    }

边处理边输出

0
我要回答