1、二级 JAVA机试 22及答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.下列程序中,实现将封装数据类型 Integer和基本数据类型 int之间的转换,以及 Integer、int 类型和 String类型之间的转换。请将程序补充完整。 程序运行结果如下: 123 456 456 源程序文件代码清单如下: public class test5 public static void main(String args) Integer intObj; int n; String s; intObj=new Integer(123);
2、n=intObj._; System.out.println(Integer.toString(n); s=new String(“456“); intObj=Integer._; System.out.println(intObj._); n=Integer.parseInt(s); System.out.println(Integer.toString(n); (分数:30.00)_二、B2简单应用题/B(总题数:1,分数:40.00)2.请完成下列 Java程序。程序的功能是对数组进行冒泡排序。冒泡排序算法的基本思路是把当前数据序列中的各相邻数据两两比较,发现任何一对数据间不符合升序或降
3、序关系则立即调换它们的顺序,从而保证相邻数据间符合升序或降序的关系。本题是进行升序排列。例如数组 a=30,1,-9,70,25则排序后为-9 1 25 30 70。 (分数:40.00)_三、B3综合应用题/B(总题数:1,分数:30.00)3.下面是一个 Applet程序,其功能是通过两个文本框获得用户输入的两个数,按回车键计算这两个数的商。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 源程序文件代码清单如下: import java.awt.*; import java.awt.Event.*; import java.applet.*; /* applet code=
4、“ex5_3.class“width=800 height=400 /applet */ public class ex5_3 extends Applet private TextField tf1,tf2; private String strAnswer; public void init() tf1=new TextField(20); add(tf1); tf2=new TextField(20); add(tf2); strAnswer=“Undefined“; public void paint(Graphics g) Font f=new Font(“TimesRoman“,F
5、ont.PLAIN,20); g.setFont(f);g.drawstring(“result:“,80,100); g.drawstring(strAnswer,60,150); public boolean action(Event e,Object o) String s1=tf1.getText(); String s2=tf2.getText(); try int n1=UString.valueOf(s1)/U; int n2=UString.valueOf(s2)/U; int out=n1/n2; StrAnswer=UInteger.parseInt(out)/U; cat
6、ch(NumberFormatException nfe) strAnswer=“error number!“; repaint(); return true; B ex5_3.html/B HTML HEAD TITLEex5_3/TITLE /HEAD BODY applet code=“ex5_3.class“ width=800 height=400 /applet /BODY /HTML(分数:30.00)_二级 JAVA机试 22答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.下列程序中,实现将封装数据类型 Intege
7、r和基本数据类型 int之间的转换,以及 Integer、int 类型和 String类型之间的转换。请将程序补充完整。 程序运行结果如下: 123 456 456 源程序文件代码清单如下: public class test5 public static void main(String args) Integer intObj; int n; String s; intObj=new Integer(123); n=intObj._; System.out.println(Integer.toString(n); s=new String(“456“); intObj=Integer._;
8、 System.out.println(intObj._); n=Integer.parseInt(s); System.out.println(Integer.toString(n); (分数:30.00)_正确答案:()解析:intValue() valueOf(s) toString() 解析 本题主要考查 Java类库中对简单数据类型的封装以及对封装类型与基本类型之间的转换。解题关键是熟悉基本数据类型的封装,以及一些常用封装类型的常用转换方法,如 Integer类的 parseInt()方法等。本题中,第 1个空,使用 intValue()方法将封装对象intObj转换为基本的数据类型
9、 int,第 2个空,使用 valueOf()方法,将字符串转换为封装对象 intObj第 3个空,使用 toString()方法,将封装对象 intObj转换为字符串打印出来,注意,这里不可以加参数。二、B2简单应用题/B(总题数:1,分数:40.00)2.请完成下列 Java程序。程序的功能是对数组进行冒泡排序。冒泡排序算法的基本思路是把当前数据序列中的各相邻数据两两比较,发现任何一对数据间不符合升序或降序关系则立即调换它们的顺序,从而保证相邻数据间符合升序或降序的关系。本题是进行升序排列。例如数组 a=30,1,-9,70,25则排序后为-9 1 25 30 70。 (分数:40.00)
10、_正确答案:()解析:jn-i; aj=ai+1; 解析 本题主要考查 for循环语句的用法及数组的基本知识。解答本题的关键是能够熟练的掌握冒泡排序算法的思想及 for循环语句的用法。排序是数据处理中经常使用的一种重要运算。常见排序分为:插入排序、选择排序、冒泡排序、基数排序等。在本题中,for(j=0; jn-i;j+)循环的功能是对上次排序的结果再进行排序,从中选择最小的数。aj=aj+1语句的功能是把最小的数放在数组的最前面。三、B3综合应用题/B(总题数:1,分数:30.00)3.下面是一个 Applet程序,其功能是通过两个文本框获得用户输入的两个数,按回车键计算这两个数的商。请改正
11、程序中的错误(有下划线的语句),使程序能输出正确的结果。 源程序文件代码清单如下: import java.awt.*; import java.awt.Event.*; import java.applet.*; /* applet code=“ex5_3.class“width=800 height=400 /applet */ public class ex5_3 extends Applet private TextField tf1,tf2; private String strAnswer; public void init() tf1=new TextField(20); add
12、(tf1); tf2=new TextField(20); add(tf2); strAnswer=“Undefined“; public void paint(Graphics g) Font f=new Font(“TimesRoman“,Font.PLAIN,20); g.setFont(f);g.drawstring(“result:“,80,100); g.drawstring(strAnswer,60,150); public boolean action(Event e,Object o) String s1=tf1.getText(); String s2=tf2.getTex
13、t(); try int n1=UString.valueOf(s1)/U; int n2=UString.valueOf(s2)/U; int out=n1/n2; StrAnswer=UInteger.parseInt(out)/U; catch(NumberFormatException nfe) strAnswer=“error number!“; repaint(); return true; B ex5_3.html/B HTML HEAD TITLEex5_3/TITLE /HEAD BODY applet code=“ex5_3.class“ width=800 height=
14、400 /applet /BODY /HTML(分数:30.00)_正确答案:()解析:Integer.parseInt(s1) Integer.parseInt(s2) String.valueOf(out) 解析 本题主要考查Applet窗口和用户自己编写异常处理方法的综合应用。解题关键是能根据实际问题找到异常发生的根源,并依此编写异常处理方法,同时还需要有 Applet窗口的基本知识,以及熟悉 Applet事件机制。本题中,第 1处和第 2处错误一样,误用了 string类的方法,应该是将 string类的对象转化为 int类型,第 3处错误与之前的两个错误相反,应该将 int类型的变量 out转化为 string类型的对象。程序运行结果如下图。