1、二级 JAVA 机试-85 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:33.00)1.return s;(分数:33.00)_二、2简单应用题(总题数:1,分数:33.00)2.);(分数:33.00)_三、3综合应用题(总题数:1,分数:34.00)3.下面是一个 Applet 程序,实现实心或者空心矩形的绘制。要求鼠标在 Applet 窗口中拖动实现矩形的绘制,可以选择填充或者空心,有按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:(分数:34.
2、00)_二级 JAVA 机试-85 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:33.00)1.return s;(分数:33.00)_正确答案:(n=divsum(n)n%i=0s+=i;)解析:解析本题考查 for 循环语句、求余运算符(%)和 Java 语言的方法的使用。解答本题的关键是熟悉使用 for 循环语句。在本题中,if(n=divsum(n)语句是用来调用 divsum(n)方法(其中 n 为方法的实际参数)和判断某个自然数是否为“完全数”。n%i=0 是用来判断数 n 是否能被数 i 整除, s+=i;是用来累加某个自然数的所有约数
3、。二、2简单应用题(总题数:1,分数:33.00)2.);(分数:33.00)_正确答案:(String)jtgetValueAt(nRow,i)strDatanRow3=FloattoString(fAverage)解析:解析本题主要考查用 swing 基本构件设计图形用户界面,以及对二维数组的基本操作。解题关键是熟悉 swing基本构件 JTable 的使用方法,熟悉 swing 的基本事件机制,会使用 addTableModelListener()来注册该模型的一个 TableModelListener,一旦表格内容改变,tableChanged()方法会被执行,使用getFirstRo
4、w()方法来得到数据被改变的行并重新计算平均值,由于数组数据是用来存储表格的数据,可以直接更改该数组的值。本题中,第 1 个空,根据参数 nRow 和 i 定位相应的数组中的数据;第 2 个空,修改数组中记录平均值的单元中的数据。三、3综合应用题(总题数:1,分数:34.00)3.下面是一个 Applet 程序,实现实心或者空心矩形的绘制。要求鼠标在 Applet 窗口中拖动实现矩形的绘制,可以选择填充或者空心,有按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:(分数:34.00)_正确答案:(g
5、clearRect(0,0,getSize()width,getSize()height)bStyle=falsebStyle=true)解析:解析本题主要考查 Applet 图形界面编程与鼠标事件相结合进行简单的图形绘制。解题关键是熟悉 Applet 中的事件机制,会利用鼠标事件进行简单的矩形绘制,通过 mouseUp(),mouseDown()来获取鼠标移动的坐标,熟悉 CheckboxGroup 类 Checkbox 类的用法,通过 Checkbox 来控制矩形是否填充。本题中,第 1 个空,对象 g 的方法 clearRect()的最后两个参数应该对调因为第 3 个参数是代表矩形的宽度,第四个是高度;第2 个空,点击第 1 个 Checkbox 是不用填充,这里 bStyle=false 是表示用填充;第 3 个空,解释和第 2 个空的相似,正好相反。