不是VIP会员,不能显示答案

题目解答

题目:
(字符串替换)给定一个字符串S(S仅包含大小写字母),下面的程序将S中的每个字母用规定的字母替换,并输出S经过替换后的结果。程序的输入是两个字符串,第一个字符串是给定的字符串S,第二个字符串S’由26个字母组成,它是a~z的任一排列,大小写不定,S’规定了每个字母对应的替换字母:S’中的第一个字母是字母A和a的替换字母,即 S中的A用该字母的大写替换,S中的a用该字母的小写替换;S’中的第二个字母是字母B 和b的替换字母,即S中的B用该字母的大写替换,S中的b用该字母的小写替换;… …以此类推。
Var change:string;
	Str:string;
Procedure CheckChangeRule;
Var     i:integer;
Begin
        for i:=1 to 26 do begin
                if  (change[i]>='A') and (change[i]<='Z')  then
                        change[i]:=chr(ord(change[i])-ord('A')+ord('a'));
                end;
        end;

Procedure ChangeString;
Var     len,i:integer;
begin
        len:=length(str);
        for i:=1 to len do begin
                if  (str[i]>='A') and (str[i]<='Z')  then
                begin
                        str[i]:=upcase(change[ord(str[i]-ord('A')+1]);
                end;
                else
                begin
                 str[i]:=change[ord(str[i])-ord('a')+1]; 
                end;
        end;
end;
begin
        readln(str);
        readln(change);
        CheckChangeRule;
         ChangeString; 
        writeln(str);
end.
考点:
分析:
解答:
评论:
老师: