2011-2012年上海交通大学《Java语言程序设计》期末试题B卷-答案
更新时间:2023-12-16 04:51:01 阅读量: 教育文库 文档下载
绝密*启用前
2011-2012年上海交通大学《Java语言程序设计》期
末试题B卷
(2011—2012学年第 1 学期)
考试形式 笔试(闭卷) 使用学生 11 本科生 考试时间 120 分钟 出卷时间2012年 06月 17日 【说明】
(1) 考生应将全部答案都写在答题纸上,否则作无效处理。
(2) 试题一~五为程序填空选择题,请从供选择答案中为每个空格挑选出一个
正确答案,并写在答题纸上,试题六为程序填空题,试题七八为程序设计题。
试题一(程序选择,每题2分,共10分)
【程序说明】利用下列公式计算pi的近似值,要求精确到10为止。请将程序填充完整或回答相关问题。
Pi/4 ≈ 1 – 1/3 + 1/5 – 1/7 + …
【程序代码】
public class CalculatePI {
public static void main(String[] args) { }
public static double Pi() { }
double result,item; int denominator; result = 0; denominator = 1; (1) C ; do
{ item = (2) A ;
result += item; sign = -sign; denominator +=2;
System.out.printf(\
-6
}while( (3) B ); return result*4;
}
【可供选择的答案】
B. int sign = 0 C. int sign = 1 D. int sign = -1 (1) A. int sign
B. (int)sign/denominator (2) A. (double)sign/denominator
C. sign/denominator D. 1.0/denominator
(3) A. Math.abs((int)sign / denominator) >=1e-6
B. Math.abs((double)sign / denominator) >=1e-6
C. (double)sign / denominator >=1e-6
D. Math.abs((int)sign / denominator) >=10-6 (4) 以下关于main方法说法正确的是 C 。 A. 一个类不可以没有main方法; B. 一个类可以有多个main方法; C. 一个应用程序可以有多个类,并且每个类可有main方法; D. 一个可执行的应用程序可以没有main方法。 (5) 以下关于main方法前的关键字void说法正确的是 C 。 A. 表示该方法不能输出任何结果; B. 表示该方法的静态方法; C. 表示该方法不返回任何结果; D. 表示该方法的访问权限是公有的。
试题二(程序选择,每题2分,共10分)
【程序说明】以下程序是某个类的一个sort方法,功能是对作为参数传入的int型数组arrayX用冒泡法对其进行由小到大排序,请将程序填充完整或回答相关问题,要求选出最佳答案。 【程序代码】 public void sort( (6)A )
{ }
int t;
for(int k = 0; k < arrayX.length - 1; k++) { }
for (int j = 1; j < (7)D ; j++) { }
if ( (8)A ) { }
t = arrayX[j]; (9) D ; arrayX[j - 1] = t;
【可供选择的答案】
A. int[] arrayX B. int arrayX (6)
C. int[] arrayX[] D. final int[] arrayX
A. arrayX.length - 1 B. arrayX.length (7)
C. arrayX.length - k D. k
A. arrayX[j - 1] > arrayX[j] B. arrayX[j] < arrayX[j - 1] (8)
C. arrayX[j] > arrayX[j - 1] D. arrayX[j] < arrayX[j + 1]
A. t = arrayX[j - 1] B. arrayX[j] = t (9)
C. arrayX[j - 1] = arrayX[j] D. arrayX[j] = arrayX[j - 1]
(10) 以下关于数组的说法错误的是 A 。 A. int型数组可以放直接放double型数据; B. 起始下标为0; C. int型数组可以放直接放byte型数据; D. 下标越界时,会抛出异常
试题三(程序选择,每题2分,共12分)
【程序说明】Triangle为三角形类,方法getArea()用于计算并返回三角形面积(根据三边a,b,c求三角形面积的方法是:令p?请将程序填充完整或回答相关问题。 【程序代码】
public class Triangle {
private double sideA; private double sideB; private double sideC;
public Triangle(double a, double b, double c) (11) C { }
public (12) A getArea()
if((a + b <= c) || (b + c <= a) || (a + c <= b)) {
throw new Exception(\三条边不能构成三角形\} else { }
sideA = a; sideB = b; sideC = c;
a?b?c, 面积s?p(p?a)(p?b)(p?c)),2 }
{ }
double s = 0;
double l = (sideA + sideB + sideC) / 2.0; s = (13) A ; return s;
public class Test { }
public static void main(String[] args) { }
double a = 3.0, b = 4.0 ,c = 5.0;//*** try {
(14) D ;
System.out.println(\三角形面积为\}
(15) C { }
System.out.println(ex.getMessage());
【可供选择的答案】 A. 空 (11)
C. throws Exception
B. throw new Exception() D. throws IOException C. float
D. int
(12)
A. double B. void
(13)
A. Math.sqrt(l *(l - sideA) * (l - sideB) * (l - sideC)) B. Math.sqrt(l(l - sideA)(l - sideB)(l - sideC))
C. Math.abs(l *(l - sideA) * (l - sideB) * (l - sideC)) D. Math.abs(l(l - sideA)(l - sideB)(l - sideC)) A. Triangle tri = new Triangle() B. Triangle tri
C. Triangle triangle = new Triangle(a, b, c) D. Triangle tri = new Triangle(a, b, c) A. catch(IOException ex) C. catch(Exception ex)
B. catch(Exception e) D. catch(IOException e)
(14)
(15)
(16) 该程序的输出结果为 A 。 A. 三角形面积为6.0 B. 三条边不能构成三角形 C. 6.0 D. 程序出错,没有结果
试题四(程序选择,每题2分,共8分)
【程序说明】以下程序为类Person、Animal、Chinese、Zhejiang和Test的代码,请将程
序填充完整或回答相关问题。 【程序代码】
//Person.java package cn.zjnu.ks;
public (22) B class Person { }
//Animal.java
package cn.zjnu.animal; public class Animal { }
//Chinese.java
package cn.zjnu.chinese;
public class Chinese extends Person { }
public void speak() {
System.out.println(\我会说汉语\}
public void speak(String msg) {
System.out.println(\我会说\}
public Chinese() {
hairColor = \黑色\
System.out.println(\中国人\}
(23) B String hairColor; public abstract void speak(); public Person() {
hairColor=””;
System.out.println(\人类\}
//Zhejiang.java
public class Zhejiang extends Chinese {
public void speak() {
(24) A //调用父类的方法speak() }
public Zhejiang() {
System.out.println(\浙江人\ } }
//Test.java public class Test { }
public static void main(String[] args) { }
Zhejiang p = new Zhejiang();
【可供选择的答案】
B. abstract (22) A. void
C. fianal D. static
(23) 若成员变量hairColor能被类Chinese中的方法访问,但不被Aniaml类中方法访问,
则应该填入
B.protected A.public
C. private D.static
(24)
A. super.speak(); C. speak();
执main()方法,输出的结果为 A A. 人类 中国人 浙江人 C. 浙江人 中国人 人类
B. Chinese.speak(); D.this. speak();
(25)
B. 人类
我会说汉语 浙江人 D.
我会说汉语
我会说浙江普通话
试题五(程序填空,每题2分,共14分)
【程序说明】请按程序模板及注释要求,将程序填充完整。 【程序代码】
【代码1】//仔细阅读程序,导入必要的包
import java.awt.event.*;
public class MyFrame extends Frame 【代码2】//实现事件监听接口 {
TextField text; Label label; public MyFrame() {
this.setBounds(100,100,300,200);
this.add(label); this.add(text);
【代码3】//创建TextField对象:text,要求text的可见字符数为12个机器字符。 【代码4】//创建 Label对象:label,要求label上是\。 【代码5】//设置窗口的布局为FlowLayout型布局。
【代码6】//将当前窗口作为text的ActionEvent事件的监视器。
【代码7】//设置窗口可见
this.addWindowListener(【代码8】{//创建窗体适配器的匿名类对象 public void windowClosing(WindowEvent e){
【代码9】}//退出应用程序
});// 匿名类定义结束
}
}
public void actionPerformed(ActionEvent e) {
【代码10】//label调用方法将自己名字设置为text中的文本 }
【代码1】 【代码2】 【代码3】 【代码4】 【代码5】 【代码6】 【代码7】 【代码8】 【代码9】
import java.awt.*; implements ActionListenter text=new TextField(12); label=new Label(\ setLayout(new FlowLayout()); text.addActionListener(this); this.setVisible(true); new WindowListener() System.exit(0);
【代码10】 label.setText(text.getText());
试题六(编程题,共15分)
【编程要求】根据以下的设计要求编写java源代码。 类名: Person
变量(访问权限均为private):
name(String) //姓名 , age(int) //年龄 方法:
构造方法(没有参数,设置姓名为“无名氏”,年龄为20)
setName(有一个名为name的String型参数,将name的值设为这个新值), getName (没有参数,返回姓名)
setAge(有一个名为age的int型参数,将age的值设为这个新值), getAge (没有参数,返回年龄)
isSameAge(有一个参数s,是另一个Student对象的引用,如果两个Student对象的age相同,则返回true,否则返回false)
public class Student { }
private String name; private int age; public Student() { }
public String getName() { }
public void setName(String name) { }
public int getAge() { }
public void setAge(int age) { }
public boolean isSameAge(Student s) { }
if(s.getAge()==this.age)
return true; return false; this.age = age; return age; this.name = name; return name; this.name=\无名氏\; this.age=20;
试题七(编程题,共15分)
试题八(编程题,)
… …
正在阅读:
2011-2012年上海交通大学《Java语言程序设计》期末试题B卷-答案12-16
企业环保设施运行管理制度08-28
2019年高考生物二轮复习检测十三“种群群落和生态系统及其稳定性03-08
新老师印象记作文600字07-06
资管产品头寸管理思路简析02-01
中国地理笔记赵济06-09
同心共筑中国梦个人心得体会参考关于2021年多篇范文08-03
保定市养猪行业企业名录2018版1196家 - 图文09-16
纳税筹划作业全部答案10-30
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 上海交通大学
- 程序设计
- 期末
- 试题
- 答案
- 语言
- 2011
- 2012
- Java
- 汽车维修电工中级题库 2
- 中关村最新物流名单
- 临床医学概要罗芳成
- 2019部编版一年级上册语文识字8小书包教案
- (部编)人教语文2011课标版一年级下册《动物王国开大会》教学反思
- 城镇化:让经济更繁荣 让生活更美好
- 冀国土资发〔2011〕1号 附件
- 消除疟疾考核题库2014
- 水电站工程施工组织设计
- 教育统计与测量试题
- 开展文明科室创建活动实施方案
- 八年级地理下册第九章第一节青藏地区的自然特征与农业教案(新版)新人教版
- 港口局年轻干部培养选拔经验做法
- 湘教版 二年级上册音乐新教案
- 2019年高考政治热点题型和提分秘籍专题31 美好生活的向导和百舸争流的思想(教学案) 含解析
- mastercam与vericut连接方法
- 招商引资中坚决不能触碰的12条法律红线!
- 校长质量分析会讲话稿
- 手法复位联合药物治疗耳石症疗效对比
- 2013年合肥中考实行网上填志愿