[问答题] 请完成下列Java程序:对大写的26个英文字母加密,从键盘输入一个大写字母串,输出这个串加密后的结果。加密操作是将字母变换成倒序的大写字母,如A->Z,B->Y。 注意:请勿改动main

20 查阅

[问答题] 请完成下列Java程序:对大写的26个英文字母加密,从键盘输入一个大写字母串,输出这个串加密后的结果。加密操作是将字母变换成倒序的大写字母,如A->Z,B->Y。

注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。

程序运行结果如下:

输入一个大写字母串:ADFSDFFE

加密后的大写字母串:ZWUHWUUV

import java.io.*;

public class ex12_2

public static void main (String[] args)

char ch = ’A’;

String str;

System. out .print ( "输入一个大写字母串: ");

try

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

str= in.readLine();

System. out .print ( "加密后的大写字母串:");

for(int i=0;i<str.length();i++)

_______________;

_______________;

System.out.print(ch);

catch(IOException e)

try

System.in.read();

catch(IOException e) ;

参考答案:

ch=str.charAt(i) ch=(char)(’Z’ -ch+’A’)

本题主要考查字符串的操作和I/O操作的简单应用。解题关键是,熟悉字符串的基本操作,会将字符作相应的转换,熟悉字符串的定位方法charAt()以及基本的I/O操作。本题中,第1个空,定位str对象中的字符,调用str对象的cheat()方法定位第i个字符并将该字符写给ch变量;第2个空,加密算法的实现,’Z’-ch表示字符ch在字符表中和字符’Z’之间相隔多少字符,再加上字符’A’就得到了倒序的字符在字符表中的位置,然后进行类型转换,就得到了倒序的字符。

计算机考试