1、二级 JAVA 机试-111 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1.请完善程序(程序文件名:Java_1.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求请完善程序并进行调试,使程序的输出结果如下。字符串“现在学习如何访问一个字符串”字符串长度:13其中第 8 个字符是:问从字节数组的第 8 到 12 获取字符是:问一个字符源程序:public class Java_1 public static void main(string args) string strin
2、g=“现在学习如何访问一个字符串”;System.out.println(“与王符串/”“+string+“/“ “);System.out.println(“字符串长度“”+_);System.out.println(“其中第 8 个字符是:”+strmg.charAt(7);char sub=new char20;System.out.print(“从字节数组的第 8 到 12 获取字符是:“);string.getChars(7,12,sub,0);System.out.println(sub);(分数:30.00)填空项 1:_二、2简单应用题(总题数:1,分数:40.00)请完善程序
3、(程序文件名:Java_2.java),并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:对字符串进行缓存处理,程序运行的某次结果如下图所示。(分数:40.00)填空项 1:_填空项 1:_填空项 1:_填空项 1:_三、3综合应用题(总题数:1,分数:30.00)请完善程序(程序文件名:Java_3.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求统计一个英文文本字符串包含的英文元音字母的个数,使程序的运行结果如下:The text contained vowels:88源程序:pu
4、blic class Java_3 public static void main(String args) String text = “ Beijing, the Capital City, is the political, “+ “cultural and diplomatic centre of China. It has“+ “become a modern international cosmopolitan city“+ “ with more than 11 million people. The Capital“+ “ International Airport, 23.5
5、 km from the city centre,“+ “is Chinas largest and most advanced airport. “ ;int vowels =0;int (1) = text.length();for(int i = 0;itextLength; i+) char ch=Character.toLowerCase( text. (2) );if(ch=a|ch=e|ch=i|ch=o|ch=u)(3) ;System.out.println( “The text contained vowels:“ + vowels +“/n“);(分数:30.00)填空项
6、 1:_填空项 1:_填空项 1:_二级 JAVA 机试-111 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1.请完善程序(程序文件名:Java_1.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求请完善程序并进行调试,使程序的输出结果如下。字符串“现在学习如何访问一个字符串”字符串长度:13其中第 8 个字符是:问从字节数组的第 8 到 12 获取字符是:问一个字符源程序:public class Java_1 public static void main(string a
7、rgs) string string=“现在学习如何访问一个字符串”;System.out.println(“与王符串/”“+string+“/“ “);System.out.println(“字符串长度“”+_);System.out.println(“其中第 8 个字符是:”+strmg.charAt(7);char sub=new char20;System.out.print(“从字节数组的第 8 到 12 获取字符是:“);string.getChars(7,12,sub,0);System.out.println(sub);(分数:30.00)填空项 1:_ (正确答案:strin
8、g.length())解析:解析 由程序和输出结果可以看出,这里是要显示字符串的长度,所以需要调用方法 length()。程序解析 本程序主要对 string 类定义字符串进行考查,其中包括几个方法:(1) length()返回此字符串的长度。(2) charAt(int index)返回指定索引处的 char 值。索引范围为从 0 到 length()-1。(3) getChars(int srcBegin,int srcEnd,char dst,int dstBegin)将字符从此字符串复制到目标字符数组。二、2简单应用题(总题数:1,分数:40.00)请完善程序(程序文件名:Java_2
9、.java),并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:对字符串进行缓存处理,程序运行的某次结果如下图所示。(分数:40.00)填空项 1:_ (正确答案:new)解析:解析 定义一个字符数组,同时用 new 运算符为字符数组分配内存。填空项 1:_ (正确答案:getChars)解析:解析 将 StringBuffer 对象 buf 中的字符串复制到字符数组 charArray 中。填空项 1:_ (正确答案:charArray.length)解析:解析 循环将字符数组内容送给输出语句。字符数组的长度即为数组的长度,所以是变量leng
10、th,而不是方法。填空项 1:_ (正确答案:reverse())解析:解析 由程序的输出结果可以看出,最后将 StringBuffer 对象 buf 进行了反序,此处应调用方法reverse()进行反序。程序解析 本程序考查用 StringBuffer 表示可变字符串对象和用字符数组表示字符串,将结果用对话框输出。用 String 类表示的是固定长度的字符串。程序中用到了 StringBuffer 中的几个方法:(1) setCharAt(int index,char ch)将给定索引处的字符设置为 ch。(2) reverse()将此字符序列用其反转形式取代。(3) getChars(in
11、t srcBegin,int srcEnd,char dst,int dstBegin)将字符从此序列复制到目标字符数组 dst(与 string 中方法同)。(4) toString()返回此序列中数据的字符串表示形式。(5) charAt(int index)返回此序列中指定索引处的 char 值(与 String 中方法同)。(6) length()返回长度(字符数)(与 String 中方法同)。三、3综合应用题(总题数:1,分数:30.00)请完善程序(程序文件名:Java_3.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要
12、求统计一个英文文本字符串包含的英文元音字母的个数,使程序的运行结果如下:The text contained vowels:88源程序:public class Java_3 public static void main(String args) String text = “ Beijing, the Capital City, is the political, “+ “cultural and diplomatic centre of China. It has“+ “become a modern international cosmopolitan city“+ “ with mo
13、re than 11 million people. The Capital“+ “ International Airport, 23.5 km from the city centre,“+ “is Chinas largest and most advanced airport. “ ;int vowels =0;int (1) = text.length();for(int i = 0;itextLength; i+) char ch=Character.toLowerCase( text. (2) );if(ch=a|ch=e|ch=i|ch=o|ch=u)(3) ;System.o
14、ut.println( “The text contained vowels:“ + vowels +“/n“);(分数:30.00)填空项 1:_ (正确答案:textLength)解析:解析 下面的循环使用到变量 textLength 作为循环的终止条件,显然 textLength 是字符串的长度,所以此处将字符串的长度赋值给变量 textLength。填空项 1:_ (正确答案:charAt(i))解析:解析 将字符串中的每个字母转换为小写,需要先将字母提取出来,所以此处使用方法 charAt。填空项 1:_ (正确答案:vowels+)解析:解析 由最后的输出语句判断出变量 vowels 表述元音的个数,因此统计出一个元音变量 vowels就加 1,所以此处应填 vowels+。程序解析 本程序统计一个字符串中元音字母的个数,然后输出。由于统计时是不区分大小写的,所以在比较前,先将字符串的每个字母都小写,再进行比较。