1、二级 JAVA 机试-217 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)请完善程序(程序文件名:Java_1.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:请完善程序,程使序运行后输出窗口如下图所示。(分数:30.00)填空项 1:_填空项 1:_填空项 1:_二、2简单应用题(总题数:1,分数:40.00)请完善程序(程序文件名:Java_2.java),并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:生成 120 之
2、间的一个随机数并计算该随机数的阶乘,使输出结果形式如下(不一定完全相同):9!=362880源程序:import java.util.Random;public class Java_2public (1) void main(String args)Random random=new Random();float x= (2) .nextFloat(); /产生 0.0 与 1.0 之间的一个浮点数int n=Math. (3) (21*x); /构造 20 以内的一个整数long f=1; /保存阶乘的结果int k=1; /循环变量do f*= (4) ;while(k=n);Syste
3、m.out.println(n+“!=“+f);(分数:40.00)填空项 1:_填空项 1:_填空项 1:_填空项 1:_三、3综合应用题(总题数:1,分数:30.00)有两个文件 Java_3.java 和 Java_3.html,其中 Java_3.java 是不完整的。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:由用户输入球的半径,然后计算球体积并输出结果,程序输入和输出界面如下图所示。(分数:30.00)填空项 1:_填空项 1:_填空项 1:_二级 JAVA 机试-217 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作
4、题(总题数:1,分数:30.00)请完善程序(程序文件名:Java_1.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:请完善程序,程使序运行后输出窗口如下图所示。(分数:30.00)填空项 1:_ (正确答案:void)解析:解析 程序考查 this 的用法。解析 方法 main()是没有返回值的,必须用 void 声明。填空项 1:_ (正确答案:JOptionPane)解析:解析 对话框是继承自 JOptionPane 类的,关于对话框详见第 2 套题的综合应用题。填空项 1:_ (正确答案:this.toString)解析:
5、解析 根据程序前面的提示字符串可见答案。二、2简单应用题(总题数:1,分数:40.00)请完善程序(程序文件名:Java_2.java),并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:生成 120 之间的一个随机数并计算该随机数的阶乘,使输出结果形式如下(不一定完全相同):9!=362880源程序:import java.util.Random;public class Java_2public (1) void main(String args)Random random=new Random();float x= (2) .nextFl
6、oat(); /产生 0.0 与 1.0 之间的一个浮点数int n=Math. (3) (21*x); /构造 20 以内的一个整数long f=1; /保存阶乘的结果int k=1; /循环变量do f*= (4) ;while(k=n);System.out.println(n+“!=“+f);(分数:40.00)填空项 1:_ (正确答案:static)解析:解析 本程序利用循环求一个随机数的阶乘。涉及随机数以及四舍五入求整数的一些方法。解析 main()方法的格式是固定的 public static void main(String args)。填空项 1:_ (正确答案:rando
7、m)解析:解析 方法 public float nextFloat()返回下一个伪随机数,它是从此随机数生成器的序列中取出的,是在 0.01.0 之间均匀分布的 float 值。这个方法是 Random 类的方法,因此前面应该是Random 类或 Random 的实例,前面创建了 Random 类的 random 对象,所以此处应填 random。填空项 1:_ (正确答案:round)解析:解析 方法 public static int round(float a)返回最接近参数的 int。因为随机数 x 是0.01.0 之间的浮点数,所以要构造 20 以内的一个整数,需要用 round 取
8、 int 类型的结果。填空项 1:_ (正确答案:k+)解析:解析 通过循环的结束条件为 k=n,可以得知 k 为循环中自增的量,f 为结果,所以,f=f*k+,就是累积 1 到 n 的过程。三、3综合应用题(总题数:1,分数:30.00)有两个文件 Java_3.java 和 Java_3.html,其中 Java_3.java 是不完整的。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。题目要求:由用户输入球的半径,然后计算球体积并输出结果,程序输入和输出界面如下图所示。(分数:30.00)填空项 1:_ (正确答案:ActionListener)解析:解析
9、程序编写了 Applet 小应用程序,其中用到了 JLabel 和 JTextField 构件,以及事件监听器。解析 程序中有方法 actionPerformed,可见是 ActionListener 接口的方法,所以需要实现ActionListener 接口。填空项 1:_ (正确答案:JLabel)解析:解析 由程序的 prompt 对象的定义可以看出是 JLabel 类的对象,所以需要用 JLabel 类的构造方法实例化。填空项 1:_ (正确答案:input. addActionListener(this);)解析:解析 因为输入半径后输出结果,所以需要对 input 对象注册监听器。