logo资料库

2008年9月全国计算机二级Java考试真题及答案.doc

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
2008 年 9 月全国计算机二级 Java 考试真题及答案 一、选择题 下列各题 A)、B)、C)、D)四个选项中,只有一个选项是正确的。 (1)一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则 元素出栈的顺序是 A) 12345ABCDE B) EDCBA54321 C) ABCDEl2345 D) 54321EDCBA (2)下列叙述中正确的是 A) 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B) 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 C) 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况 D) 循环队列中元素的个数是由队头指针和队尾指针共同决定 (3)在长度为 n 的有序线性表中进行二分查找,最坏情况下需要比较的次数是 A) O(n) B) O(n2) C) O(log2n) D) O(nlog2n) (4)下列叙述中正确的是 A) 顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 B) 顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 C) 顺序存储结构能存储有序表,链式存储结构不能存储有序表 D) 链式存储结构比顺序存储结构节省存储空间 (5)数据流图中带有箭头的线段表示的是 A) 控制流 B) 事件驱动 C) 模块调用 D) 数据流 (6)在软件开发中,需求分析阶段可以使用的工具是 A) N-S 图 B) DFD 图 C) PAD 图 D) 程序流程图 (7)在面向对象方法中,不属于“对象”基本特点的是 A) 一致性 B) 分类性 C) 多态性 D) 标识唯一性 (8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是 A) 一对一 B) 一对多 C) 多对一 D) 多对多 (9)在数据管理技术发展的三个阶段中,数据共享最好的是 A) 人工管理阶段 B) 文件系统阶段 C) 数据库系统阶段 D) 三个阶段相同 (10)有三个关系 R、S 和 T 如下:
由关系 R 和 S 通过运算得到关系 T,则所使用的运算为 A) 笛卡尔积 B) 交 C) 并 D) 自然连接 (11)下列对 Java 语言的叙述中,错误的是 A) Java 虚拟机解释执行字节码 B) JDK 的库文件目录是 bin C) Java 的类是对具有相同行为对象的一种抽象 D) Java 中的垃圾回收机制是一个系统级的线程 (12)下列 Java 源程序结构中前三种语句的次序,正确的是 A) import, package, public class B) import 必为首,其他不限 C) public class, import, package D) package, import, public class (13)阅读下列代码 public class { public static void main(String args[]){ double d=12.3; Decrementer dec=new Decrementer(); dec. decrement(D) ; System. out. println(D) ; } } class Decrementer{ public void decrement(double decMe){ decMe=decMe-1.0; } } 代码执行后输出结果是 A) 12.3 B) 11.3 C) 13.3 D) -1.0 (14)给一个 short 类型变量赋值的范围是 A) -128~+127 B) -2147483648~+2147483647
C) -32768~+32767 D) -1000~+1000 (15)Reader 类所处理的是 A) 字符流 B) 字节流 C) 文件流 D) 管道流 (16)阅读下列代码段 ByteArrayOutputStream bout=new ByteArrayOutputStream(); ObjectOutputStream out=new ObjectOutputStream(bout); out. writeObject(this); out. close(); 以上代码段的作用是 A) 将对象写入内存 B) 将对象写入硬盘 C) 将对象写入光盘 D) 将对象写入文件 (17)下列不属于 Swing 构件的是 A) JMenu B) JApplet C) JOptionPane D) Panel (18)下列不是 AWT 的布局管理器的是 A) FlowLayout B) BorderLayout C) BoxLayout D) GridLayout (19)子类继承了父类的方法和状态,在子类中可以进行的操作是 A) 更换父类方法 B) 减少父类方法 C) 减少父类变量 D) 增添方法 (20)下列能表示字符串 s1 长度的是 A) s1. length() B) s1. length C) s1. size D) s1. size() (21)阅读下列代码段 abstract class Person{ public Person(String n){ name=n; } public______String getDescription(); public String getName(){ } private String name; } 在下画线处应填入的修饰符是
A) static B) abstract C) protected D) final (22)阅读下列代码 public class Jixiangwu{ public static void main(String[]args){ String[]stars={"贝贝","晶晶","欢欢","迎迎","妮妮"}; System. out. println("你抽取的奥运吉祥物是"+"“" +stars[(int)(stars. ______* Math. random())]+"”"+"!"); } } 为保证程序能正确执行,程序中下画线处应填写的是 A) long B) width C) wide D) length (23)下列方法中可用于定义线程体的是 A) start() B) init() C) run() D) main() (24)下列方法中与 Applet 显示无关的是 A) update() B) draw() C) repaint() D) paint() (25)下列语句中错误的是 A) String s[]={"how","are"}; B) byte b=255; C) String s="one"+"two";D) int i=2+2000; (26)下列可用作 switch(expression)语句参数的是 A) String s B) Integer i C) boolean b D) int i (27)当浏览器重新返回到包含 Applet 的页面时调用的方法是 A) start() B) init() C) stop()D) destroy() (28)阅读下列代码 public class Test{ public static void main(String args[]){ System. out. println((2<0)? 10:8); } } 其运行结果是 A) 2 B) 0 C) 10 D) 8 (29)阅读下列代码
public class Arrays{ public static void main(String[]args){ int[]a=new int[5]; for(int i=0;i<a. length; i=i+1){ a[i]=10+i; } for(int i=0; i<a. length; i=i+1){ System. out. println(a[i]); } String[]s={"Frank","Bob","Jim"}; for(int i=0; i<s. length; i=i+1){ System. out. println(s[i]); } S[2]="Mike"; System. out. println(s[2]); } } 代码运行结果正确的是 A) 10 B) 11 C) 10 D) 11 11121112 12131213 13141314 14151415 Mike FrankFrankMike Bob Bob Bob Jim FrankMike Jim Bob Jim Jim Mike Frank (30)下列方法能够用来实现线程之间通信的是 A) notify() B) run() C) sleep() D) join() (31)下列关于线程的说法中,正确的是 A) 一个线程一旦被创建,就立即开始运行
B) 使用 start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行 C) 当运行状态的线程因为调用了 yield()方法而停止运行,它一定被放在可运行线程队列的前面 D) 当因等待对象锁而被阻塞的线程获得锁后,将直接进入运行状态 (32)下列概念中不包括任何实现,与存储空间没有任何关系的是 A) 类 B) 接口 C) 抽象类 D) 对象 (33)阅读下列一个支持多线程并发操作的堆栈类代码段 public class MyStack{ private int idx=0; private int[]data=new int[8]; public______void push(int i){ data[idx]=i; idx + +; } …… } 在下画线处应填入的是 A) synchronized B) wait C) blocked D) interrupt (34)阅读下列代码 public class Test implements Runnable{ public void run(Thread t){ System. out. println("Running. "); } public static void main(String[]args){ Thread tt=new Thread(new Test()); tt. start(); } } 代码运行结果是 A) 将抛出一个异常 B) 没有输出并正常结束 C) 输出“Running”并正常结束 D) 程序第 2 行将出现一个编译错误 (35)阅读下列代码
public class Test{ String s="One World One Dream"; public static void main(String args[]){ System. out. println(s); } } 其运行结果是 A) args B) One World One Dream C) s D) 编译时出错 二、填空题 注意:以命令关键字填空的必须拼写完整。 (1)对下列二叉树进行中序遍历的结果是 【1】 。 (2)按照软件测试的一般步骤,集成测试应在 【2】 测试之后进行。 (3)软件工程三要素包括方法、工具和过程,其中, 【3】 支持软件开发的各个环节的控制和管理。 (4)数据库设计包括概念设计、 【4】 和物理设计。 (5)在二维表中,元组的 【5】 不能再分成更小的数据项。 (6)Java 语言中的浮点数默认类型是 【6】 。 (7) 【7】 是类中的一种特殊方法,是为对象初始化操作编写的方法。 (8)文件类 File 是 【8】 包中的一个重要的非流类。 (9)已知 Java 语句 double[][]balances=new double[NYEARS][NRATES]; 数组 balances 是 【9】 维数组。 (10)对二进制数进行算术右移的运算符是 【10】 。 (11)MouseMotionListener 中的方法包括 【11】 ()。 (12)任何运行在 Web 页面中的小应用程序都必须是 Java 中 【12】 类的子类。 (13)Swing 中的内部框架类是 【13】 。
(14)下列代码包括一个 Html 文件和一个 Applet 类。在 hello. html 文件的横线处填入相应内容,把 HelloApplet 嵌入在 hello. html 中。 hello. html 文件内容: <HTML> <HEAD> <TITLE>Hello</TITLE> </HEAD> <BODY> <APPLET CODE=" 【14】 "WIDTH=150 HEIGHT=25> </APPLET> </BODY> </HTML> HelloApplet. java 文件内容: import java. awt. *; import java. applet. *; public class HelloApplet extends Applet{ public void paint(Graphics g){ g. drawString("Hello!" ,25,25); } } (15)线程是程序运行时的一个执行流,是由 CPU 运行程序代码并操作 【15】 所形成的。 参考答案及解析 一、选择题 (1)[答案] B) [解析] 栈的特点是先进后出,所以全部入栈后再全部出栈所得的序列顺序必然与入栈序列的顺序相反。 (2)[答案] D) [解析] 循环队列是线性表的一种,所以选项 A)错误。循环队列的入队和出队需要队尾指针和队头指针完 成,所以选项 B)和 C)错误。 (3)[答案] C) [解析] 二分查找法也称为折半查找法。它的基本思想是:将 n 个元素分成个数大致相同的两半,取 a[n/2] 与欲查找的 x 作比较,如果 x=a[n/2],则找到 x,算法终止;如果 x<a[n/2],则只要在数组 a 的左半部
分享到:
收藏