1、二级 JAVA机试 33及答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.下面是一个 Applet小程序,其功能为:以坐标(10,20)为起点,画一条长为 80个像素点的绿色直线,请在横线处填写一条语句,使程序的完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 _ import javaawt*; public class test_drawline extends Applet public void paint(_) gsetColor(Colorgreen);_ (分数:30.00)_
2、二、B2简单应用题/B(总题数:1,分数:40.00)2.请完成下列 Java程序:实现换算 GPA,对于学生学习的每一门课程,都输入两个数据:考试成绩和学分,考试成绩按如下公式换算: 90100:5 7589: 4 6074: 3 4059: 2 40 以下:1 GPA 等于换算后每门课的成绩的学分加权平均值(成绩学分)/学分)。 要求用图形用户界面实现上述功能,用户窗口包括 2个文本区域,一个输入成绩,一个输入学分,一个文本面板用作输出 GPA的换算结果,一个按钮,点击实现换算。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: (分数
3、:40.00)_三、B3综合应用题/B(总题数:1,分数:30.00)3.下面是一个 Applet程序,其功能是在图形用户界面中实现打印任意行数的杨辉三角形,编写一个含有整型形式参数的方法,此方法打印杨辉三角形,打印的行数由形式参数指定。编写 Applet程序接受用户输入的整数,作为实际参数传递并调用上面的方法,要求图形用户界面上包含一个文本区作为输入参数的入口,一个带有纵向滚动条的文本面板作为输出打印结果的区域,一个按钮,点击则完成打印。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。程序运行结果如下: (分数:30.00)_二级 JA
4、VA机试 33答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.下面是一个 Applet小程序,其功能为:以坐标(10,20)为起点,画一条长为 80个像素点的绿色直线,请在横线处填写一条语句,使程序的完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 _ import javaawt*; public class test_drawline extends Applet public void paint(_) gsetColor(Colorgreen);_ (分数:30.00)_正确答案:(
5、)解析:import javaapplet*; Graphics g gdrawLine(10,20,10,100); 解析 本题考查Java Applet小程序。Applet 是能够嵌入到 HTML页面中,并能够在浏览器中运行的 Java类。定义用户的Applet时,必须继承 javaapple 包中的 Applet类。另外,Graphics 类在 javaawt 包中,它是Applet运行绘制的关键类。Graphics 类中提供的绘图方法分为两类:一类是绘制图形,如 drawLine()画直线,drawRect()画矩形等等;一类是绘制文本,如 drawstring()绘制字符串,draw
6、Chars()绘制字符等等。解答此类问题必须掌握以上知识点。在本题中 import javaapplet*;语句是导入 javaapplet包,g.drawLine(10,20,10,100);方法中(10,20)是所画横线的起点坐标,(10,100)是横线的终点坐标。二、B2简单应用题/B(总题数:1,分数:40.00)2.请完成下列 Java程序:实现换算 GPA,对于学生学习的每一门课程,都输入两个数据:考试成绩和学分,考试成绩按如下公式换算: 90100:5 7589: 4 6074: 3 4059: 2 40 以下:1 GPA 等于换算后每门课的成绩的学分加权平均值(成绩学分)/学分
7、)。 要求用图形用户界面实现上述功能,用户窗口包括 2个文本区域,一个输入成绩,一个输入学分,一个文本面板用作输出 GPA的换算结果,一个按钮,点击实现换算。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: (分数:40.00)_正确答案:()解析:dTol += nt*n2 nCount + 解析 本题主要考查简单应用 swing基本构件和布局管理器实现图形用户界面的设计,并能按题目要求设计换算 GPA的算法。解题关键是熟悉熟悉 swing的基本构件库,包括JTextField,JFrame,JTextPane,JButton,swin
8、g 的事件机制以及 GridLayout布局管理器的使用,还需要理解题干中的信息,并根据信息给出解决问题的算法。本题中,第 1个空,计算(成绩学分); 第 2个空,对课程计数器 nCount做累加。三、B3综合应用题/B(总题数:1,分数:30.00)3.下面是一个 Applet程序,其功能是在图形用户界面中实现打印任意行数的杨辉三角形,编写一个含有整型形式参数的方法,此方法打印杨辉三角形,打印的行数由形式参数指定。编写 Applet程序接受用户输入的整数,作为实际参数传递并调用上面的方法,要求图形用户界面上包含一个文本区作为输入参数的入口,一个带有纵向滚动条的文本面板作为输出打印结果的区域,
9、一个按钮,点击则完成打印。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。程序运行结果如下: (分数:30.00)_正确答案:()解析:n=IntegerparseInt(jtfgetText() int j=i;jn;i+ jtpgetText()+s+”/n“ 解析 本题主要考查 swing图形用户界面设计和 Applet窗口相结合解决一些实际问题的综合应用。解题关键是熟悉 swing的基本构件库,包括 JFrame,JTextPane,JButton 以及 swing的事件机制,还需要熟悉swing和 Applet应用相结合的程序设计方法,并且要会设计一些解决简单问题的算法,杨辉三角形就是一例。本题中,第一处,对象 jd调用方法 getText()得到的是文本面板中的字符串类型的数据,而 n是整形数据类型,因此需要做数据类型转换;第二处,循环变量 j应该从外层循环变量 i开始一直到 n,否则输出的“*”数目不变;第三处,应该在已有的输出结果之上在输出一行新的串,因此需要加上jip.getText()。