#NOIP2008J1Q29. [NOIP 2008 普及组初赛] 第 29 题

[NOIP 2008 普及组初赛] 第 29 题

(字符串替换)

给定一个字符串S(S仅包含大小写字母),下面的程序将S中的每个字母用规定的字母替换,并输出S经过替换后的结果。程序的输入是两个字符串,第一个字符串是给定的字符串S,第二个字符串S’由26个字母组成,它是a-z的任一排列,大小写不定,S’规定了每个字母对应的替换字母:S’中的第一个字母是字母A和a的替换字母,即S中的A用该字母的大写替换,S中的a用该字母的小写替换;S’中的第二个字母是字母B和b的替换字母,即S中的B用该字母的大写替换,S中的b用该字母的小写替换;…… 以此类推。

#include <iostream>
#include <string.h>
char change[26], str[5000];
using namespace std;
void CheckChangeRule()
{
    int i;
    for (i = 0;i < 26;i ++)
    {
        if (【第1空】)
            change[i] -= 'A' - 'a';
    }
}

void ChangeString()
{
    int i;
    for (i = 0;i <strlen(str);i ++)
    {
        if(【第2空】)
            str[i] = change[str[i] - 'A'] -'a' + 'A';
        else
            【第3空】;
    }
}

int main()
{
    int i;
    cin >> str ;
    cin >> change;
    CheckChangeRule();
    【第4空】;
    cout << str << endl;
    return 0;
}

请填写【第3空】。

{{ input(1) }}