1、二级 JAVA机试 18及答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.最大真约数是指一个数的(除它本身之外)最大约数。下面的程序是求一个数的最大真约数,请在程序的每条横线处填写一个语句,使程序的功能完整(例如:100 的最大真约数是 50)。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 public class MaxDiv public static void main(String args ) int a=100; _ while(i0) if(_) _ i-; System. ou
2、t. print in (a+“的最大真约数为: “+i ); (分数:30.00)_二、B2简单应用题/B(总题数:1,分数:40.00)2.请完成下列 Java程序:实现 JComboBox,包含 3个选项,分别是 java,c+,vb,以及 1个文本区,用于显示选择结果。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: (分数:40.00)_三、B3综合应用题/B(总题数:1,分数:30.00)3.下面是一个 Applet程序,其功能是对输入的字符串进行抽取。要求给出抽取的子串在母串中的起始和终止位置,输出抽取出来的子串。请改正程序
3、中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下: (分数:30.00)_二级 JAVA机试 18答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.最大真约数是指一个数的(除它本身之外)最大约数。下面的程序是求一个数的最大真约数,请在程序的每条横线处填写一个语句,使程序的功能完整(例如:100 的最大真约数是 50)。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 public class MaxDiv public static v
4、oid main(String args ) int a=100; _ while(i0) if(_) _ i-; System. out. print in (a+“的最大真约数为: “+i ); (分数:30.00)_正确答案:()解析:int i=a-1; a%i=0 break; 解析 本题主要考查 while循环语句、break 保留字和求余运算符。解答本题的关键是熟练掌握 while循环语句、break 保留字和求余运算符的知识。在本题中,int i=a-1;语句的功能是定义变量 i,if(ai=0)语句用来判断变量 i是否为 a的约数,break;语句的功能是退出 while循环
5、体,使程序的执行从 while循环体后的第 1条语句开始。二、B2简单应用题/B(总题数:1,分数:40.00)2.请完成下列 Java程序:实现 JComboBox,包含 3个选项,分别是 java,c+,vb,以及 1个文本区,用于显示选择结果。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: (分数:40.00)_正确答案:()解析:ie.getSource() newO=iegetItem() 解析 本题主要考查 swing进行图形用户界面开发。解题关键是熟悉 JtextField和 JcomboBox等构件的使用方法,以及事件处
6、理机制,掌握在 swing环境下的ItemListener监听器的使用方法。本题中,第 1个空,ItemEvent 类的 ie对象调用 getSource()方法获得发生事件的对象 o;第 2个空,ie 调用 getItem()方法获得选项的对象,并写给新的对象 newO。三、B3综合应用题/B(总题数:1,分数:30.00)3.下面是一个 Applet程序,其功能是对输入的字符串进行抽取。要求给出抽取的子串在母串中的起始和终止位置,输出抽取出来的子串。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下: (分数:30.0
7、0)_正确答案:()解析:g.drawString(strResult, 80, 160) to=IntegerparseInt(str3) strResult=str1substring(from, to) 解析 本题主要考查字符串的取子串操作和 Applet图形绘制以及 Applet窗口的设计等。解题关键是熟悉字符串的操作,会使用 awt基本构件 TextField和 Button等以及事件处理机制。本题中第 1处,第 3个参数不应该和上一条语句相同,否则输出的字符串和上面语句输出的字符串重叠;第 2处,应该是将 str3所接受的输入作为子串的下界,而不是 str1;第 3处,调用 substring()方法要注意参数的含义,第 1个是子串开始的位置,第 2个是子串结束的位置。