[计算机类试卷]国家二级(JAVA)机试模拟试卷51及答案与解析.doc

上传人:amazingpat195 文档编号:503585 上传时间:2018-11-29 格式:DOC 页数:7 大小:35KB
下载 相关 举报
[计算机类试卷]国家二级(JAVA)机试模拟试卷51及答案与解析.doc_第1页
第1页 / 共7页
[计算机类试卷]国家二级(JAVA)机试模拟试卷51及答案与解析.doc_第2页
第2页 / 共7页
[计算机类试卷]国家二级(JAVA)机试模拟试卷51及答案与解析.doc_第3页
第3页 / 共7页
[计算机类试卷]国家二级(JAVA)机试模拟试卷51及答案与解析.doc_第4页
第4页 / 共7页
[计算机类试卷]国家二级(JAVA)机试模拟试卷51及答案与解析.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、国家二级( JAVA)机试模拟试卷 51及答案与解析 一、基本操作题( 30分) 1 下列程序中,分别计算 1, 2, 3, , 10的阶乘,并输出计算结果,请将程序补充完整。程序运行结果如下: 1!=1 2!=2 3!=6 4!=24 5!=120 6!=720 7!=5040 8!=40320 9!=362880 10!=3628800 源程序文件代码清单如下: public class ex01 1 public static void main(String args) long 1Factorial; for(int i=1; i =10; i+) _; for(int j=2; _

2、; j+) _; System.out.println(i+“!=“+lFactorial); 二、简单应用题( 40分) 2 请完成下列 Java程序:用 Swing实现一个简单的学生成绩管理器,显示出学生的姓名、 Java成绩、 C+成绩和这两门课的平均成绩,学生一共有 4个人 (Mike,Jack等 )。要求可以修改学生的姓名和成绩,并且能够直接计算出平均成绩,如改变 Mike的 java成绩后,在平均成绩栏会自动更新为新的平均成绩。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 源程序文件清单如 下: import java.awt.*; impo

3、rt java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.table.TableModel; public class ex03_2 extends JFrame private JTable jt; private String strData; public static void main(String args) ex03_2 obj03_2=new ex03_2(); obj03_2.pack(); obj03_2.setVisible(true); public

4、 ex03_2() StringcolumnNames=“name“, “java“, “C+“, “average“; strData=new String “Mike“, “70.0“, “80.0“, “75.0“, “Jack“, “70.0“, “100.0“, “85.0“, “David“, “75.0“, “95.0“, “85.0“, “Tom“, “60.0“, “80.0“, “70.0“ ; jt=new JTable(strData, columnNames); jt.setPreferredScrollableViewportSize(new Dimension(4

5、00, 200); JScrollPane tp=new JScrollPane(jt); setTitle(“ex03_2“); Container cp=getContentPane(); cp.add(tp, BorderLayout.CENTER); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent we) System.exit(0); jt.setSelectionMode(ListSelectionModel.SINGLE SELECTION); TableModel tm=jt

6、.getModel(); tm.addTableModelListener(new TableModelListener() public void tableChanged(TableModelEvent tme) int nRow=tme.getFirstRow(); float fNum; float fSum=0; for(int i=1; i =2; i+) fNum=Float.parseFloat(_); fSum+=fNum; float fAverage=fSum/2; _; 三、综合应用题( 30分) 3 下面是一个 Applet程序,其功能是通过一个按钮控制一个窗口的创建

7、,显示与隐藏,并且以按钮文字作为提示,可以随着窗口的状态改变,即如果窗口出现,则按钮文字为 Hide myFrm,提示用户点击按钮,则隐藏窗口,反之亦然。请改正程序中的错误 (有下划线的语句 ),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 源程序代码文件清单如下; import java.awt.*; import java.applet.*; /* applet code=“ex20_3.class“width=800 height=400 /applet */ public class ex20_3 extends Applet private Frame frm;

8、 private Button showBtn; public void init() showBtn=new Button(“Show Frame“); add(ShowBtn); public boolean action(Event e, Object o) ife.target=showBtn) if(frm=null) frm,show(); frm.dispose(); frm=null; showBtn.setLabel(“Show myFrm“); else frm=new Frame(“myFrm“); frm.resize(200, 150); frm.setBackgro

9、und(Color.gray); frm.hide(); showBtn.SetLabel(“Hide myFrm“); return true; ex02_3.html HTML HEAD TITLE ex02_3 /TITLE /HEAD BODY applet code=“ex02_3.class“ width=800 height+400 /applet /BODy /HTML 国家二级( JAVA)机试模拟试卷 51答案与解析 一、基本操作题( 30分) 1 【正确答案】 lFactorial=1 j =i lFactorial*=j 【试题解析】 本题主要考查 for循环语句和简单

10、的数学计算。解题要点是熟练掌握 for循环语句,会解决一些简单的数学问题,熟悉求阶乘的算法,并用程序实现这一算法。本题中,第 1个空,要对 lFadorial变量进行初始化,因为需要计算1 10一共 10个数的阶乘,所以最外层循环共执行 10次,每次都需要将lFactorial重新初始化为 1;第 2个空,内层循环实现某个数的阶 乘,因此循环变量的上界应该是 j =i;第 3个空,阶乘算法的公式,做累乘运算。 二、简单应用题( 40分) 2 【正确答案】 (String)jt.getValueAt(nRow, i) strDatanRow3=Float.toString(fAve rage)

11、【试题解析】 本题主要考查用 swing基本构件设计图形用户界面,以及对二维数组的基本操作。解题关键是熟悉 swing基本构件 JTable的使用方法,熟悉 swing的基本事件机制,会使用 addTableModelListener()来注册该模型的一个 TableModelListener,一旦表格内容改变, tableChanged()方法会被执行,使用getFirstRow()方法来得到数据被改变的行并重新计算平均值,由于数组是用来存储表格的数据,可以直接更改该数组的值。本题中,第 1个空,根据参数 nRow和 i定位相应的数组中的数据;第 2个空,修改数组中记录平均值的单元中的数据。

12、 三、综合应用题( 30分) 3 【正确答案】 frm!=null frm.hide() frm.show() 【试题解析】 本题主要考查 Applet窗口及 Applet程序的执行过程,和图形用户界面程序的设计。解题关键是熟悉 Applet窗口程序设计及其执行过程。要求加入一个 Button构件,同时需要熟悉图形用户界面的设计。通过 Applet中的 Button构件控制一个 Frame窗口的显示与隐藏,要熟悉如何建立一个新窗口,如何设置窗口的标题,如何利用 Component类的函数将窗口关闭。本题中,要正确解答,需要明确程序的控制流程;首先,判断用户是否按下按钮;其次,判断当前窗口对象是否存在,如果窗口不存在则定义一个窗口,反之将窗口隐藏,并同时修改按钮文字作 为提示。要明白提示作用是;如果存在则提示关掉,不存在则提示显示。第 1处,判断条件应该是 frm!=null,作用是判断当前窗口对象是否存在,存在的情况下才应该隐藏;第 2处,这部分语句是用来隐藏窗口的,所以,应该是frm.hide();同理第 3处错误应该是 frm.show()。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1