B2115 密码翻译

· · 题解

题目:B2115

题意:

Code:

#include<bits/stdc++.h>
using namespace std;
char s[81]; //定义字符串。
int n; //字符串长度。
int main()
{
    cin.getline(s,81);
    //输入字符串,因为有空格,所以不能用cin。
    //最多80位,末位自动为'\0',所以输入81位,输入不够81位就自动停止。
    n=strlen(s); //非空字符串长度。
    for(int i=0;i<n;i++) //输入时是从第0位到第n-1位。
    {
        if((s[i]>='b'&&s[i]<='z')||(s[i]>='B'&&s[i]<='Z'))
            s[i]--;
        //把b-z和B-Z替换成前一个字母。
        else if(s[i]=='a')
            s[i]='z';
        //把a替换成z。
        else if(s[i]=='A'||s[i]=='@')
            s[i]='Z';
        //把A和@替换成Z。
        cout<<s[i]; //边改边输出。
    }
    return 0;
}