2005年4月全国计算机等级考试二级JAVA笔试试题及答案
2005年4月全国计算机等级考试二级JAVA笔试试题及答案
一、选择题(每小题2分,共70分) 
下列各题A.、B.、C.、D.四个选项中,只有一个选项是正确的,请将正确选项涂写
在答题卡相应位置上,答在试卷上不得分。 
(1)数据的存储结构是指( )。 
A.存储在外存中的数据 
B.数据所占的存储空间量 
C.数据在计算机中的顺序存储方式 
D.数据的逻辑结构在计算机中的表示 
答案:D 
(2)下列关于栈的描述中错误的是( )。 
A. 栈是先进后出的线性表 
B. 栈只能顺序存储 
C. 栈具有记忆作用 
D. 对栈的插入与删除操作中,不需要改变栈底指针 
答案:B 
(3)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是( )。 
A.冒泡排序为n/2 
B.冒泡排序为n 
C.快速排序为n 
D.快速排序为n(n-1)/2 
答案:D 
(4)对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为( )。 
A.log2n 
B.n/2 
C.n 
D.n+1 
答案:C 
(5)下列对于线性链表的描述中正确的是( )。 
A. 存储空间不一定是连续,且各元素的存储顺序是任意的 
B. 存储空间不一定是连续,且前件元素一定存储在后件元素的前面 
C. 存储空间必须连续,且前件元素一定存储在后件元素的前面 
D. 存储空间必须连续,且各元素的存储顺序是任意的 
答案:A 
(6)下列对于软件测试的描述中正确的是( )。 
A. 软件测试的目的是证明程序是否正确 
B. 软件测试的目的是使程序运行结果正确 
C. 软件测试的目的是尽可能多地发现程序中的错误 
D. 软件测试的目的是使程序符合结构化原则 
答案:C 
(7)为了使模块尽可能独立,要求( )。 
A. 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 
B. 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱
C. 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 
D. 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 
答案:B 
(8)下列描述中正确的是( )。 
A.程序就是软件 
B.软件开发不受计算机系统的限制 
C.软件既是逻辑实体,又是物理实体 
D.软件是程序、数据与相关文档的集合 
答案:D 
(9)数据独立性是数据库技术的重要特点之一,所谓数据独立性是指( )。 
A.数据与程序独立存放 
B.不同的数据被存放在不同的文件中 
C.不同的数据只能被对应的应用程序所使用 
D.以上三种说法都不对 
答案:D 
(10)用树形结构表示实体之间联系的模型是( )。 
A.关系模型 
B.网状模型 
C.层次模型 
D.以上三个都是 
答案:C 
(11)在Java中,负责对字节代码解释执行的是( )。 
A.垃圾回收器 
B.虚拟机 
C.编译器 
D.多线程机制 
答案:B 
(12)下列叙述中,正确的是 
A.Java语言的标识符是区分大小写的 
B.源文件名与public类名可以不相同 
C.源文件扩展名为.jar 
D.源文件中public类的数目不限 
答案:A 
(13)下列属于合法的Java标识符是 
A._cat 
B.5books 
C.+static 
D.-3.14159 
答案:A 
(14)在Java中,表示换行符的转义字符是 
A.\n 
B.\f 
C.'n' 
D.\dd 
答案:A 
(15)在Java中,由Java编译器自动导入,而无需在程序中用import导入的包是 
A.java.applet 
B.java.awt 
C.java.util 
D.java.lang 
答案:D 
(16)在Java中,所有类的根类是 
A.java.lang.Object 
B.java.lang.Class 
C.java.applet.Applet 
D.java.awt.Frame 
答案:A 
(17)在Java中,用Package语句说明一个包时,该包的层次结构必须是 
A.与文件的结构相同 
B.与文件目录的层次相同 
C.与文件类型相同 
D.与文件大小相同 
答案:B 
(18)在读字符文件Employee.dat时,使用该文件作为参数的类是 
A.BufferReader 
B.DataInputStream
C.DataOutoutStream 
D.FileInputStream 
答案:D 
(19)下列构造方法的调用方式中,正确的是 
A.按照一般方法调用 
B.由用户直接调用 
C.只能通过new自动调用 
D.被系统调用 
答案:C 
(20)类Panel默认的布局管理器是 
A.GridLayout 
B.BorderLayout 
C.FlowLayout 
D.CardLayout 
答案:C
(21)在Java中,能实现多重继承效果的方式是 
A.内部类 
B.适配器 
C.接口 
D.同步 
答案:C 
(22)char类型的取值范围是 
A.2-7 ~27 -1 
B.0~216-1 
C.-215 ~215 -1 
D.0~28-1 
答案:B 
(23)能够支持javadoc命令的注释语句是 
A./**...// 
B./*...*/ 
C.// 
D./**...*/ 
答案:D 
(24)十进制数16的16进制表示格式是 
A.0x10 
B.0x16 
C.0xA 
D.16 
答案:A 
(25)int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是 
A.public int MAX_LENGTH=100 
B.final int MAX_LENGTH=100 
C.public const int MAX_LENGTH=100 
D.public final int MAX_LENGTH=100 
答案:D 
(26)下列不是InputStream子类的是 
A.文件输入流FileInputStream 
B.final int MAX_LENGTH=100 
C.public const int MAX_LENGTH=100 
D.public final int MAX_LENGTH=100 
答案:C 
(27)下列方法中可以用来创建一个新线程的是 
A.实现java.lang.Runnable接口并重写start()方法 
B.实现java.lang.Runnable接口并重写run()方法 
C.实现java.lang.Thread类并重写run()方法 
D.实现java.lang.Thread类并重写start()方法 
答案:C 
(28)下列关于Java Application与Applet的说法中,正确的是 
A.都包含main()方法 
B.都通过“appletviewer”命令执行 
C.都通过“javac”命令编译 
D.都嵌入在HTML文件中执行 
答案:C 
(29)当启动Applet程序时,首先调用的方法是 
A.stop() 
B.init() 
C.start() 
D.destroy() 
答案:B 
(30)下列关于线程优先级的说法中,正确的是 
A.线程的优先级是不能改变的 
B.线程的优先级是在创建线程时设置的 
C.在创建线程后的任何时候都可以设置 
D.B和C 
答案:C
(31)当浏览器重新返回Applet所在页面时,将调用Applet类的方法是  
A.start()  
B.init()  
C.stop()  
D.destroy()  
答案:A  
(32)按照Java的标识符命名规范,下列表示一个类的标识符正确的是  
A.Helloworld  
B.HelloWorld  
C.helloworld  
D.helloWorld  
答案:B  
(33)下列代码中,将引起一个编译错误的行是  
1)public class Test{  
2) int m,n;  
3) public Test() {}  
4) public Test(int a) {m=a;}  
5) public static void main(String args[]){  
6) Test t1,t2;  
7) int j,k;  
8) j=0;k=0;  
9) t1=new Test();  
10) t2=new Test(j,k);  
11) }  
12)}  
A.第3行  
B.第5行  
C.第6行  
D.第10行  
答案:D  
(34)下列程序的功能是在监控台上每隔一秒钟显示一个字符串“Hello”,能够填写在程序中下划线位 
置,使程序完整并能正确运行的语句是  
public class Test implements Runnable{  
public static void main(String args[]){  
Test t=new Test();  
Thread tt=new Thread(t);  
tt.start();  
}  
public void run(){  
for(;;){  
try{  
;  
}catch( e){}  
System.put.println("Hello");  
}  
}  
}  
A. sleep(1000)  
InterruptedException  
B. sleep(1000)  
InterruptedException  
C. Thread.sleep(1000)  
RuntimeException  
D. Thread.sleep(1000)  
InterruptedException  
答案:D  
(35)阅读下列代码后  
public class Person{  
int arr[]=new int[10];  
public static void main(String args[]){  
System.out.println(arr[1]);  
}  
}  
正确的说法是  
A. 编译时将产生错误  
B. 编译时正确,运行时将产生错误  
C. 输出零  
D. 输出空  
答案:A  
二、填空题(每空2分,共40分)  
请将每空的正确答案写在【1】至【20】序号的横线上,答在试卷上不得分。  
(1)某二叉树中度为2的结点有18个,则该二叉树中有 【1】   个叶子结点。  答案:19  
(2)在面向对象方法中,类的实例称为 【2】    。  答案:对象  
(3)诊断和改正程序中错误的工作通常称为 【3】    。  答案:调试或程序调试或软件调试或Debug(英文字母大小写均可)或调试程序或调试软件  
(4)在关系数据库中,把数据表示成二维表,每一个二维表称为 【4】    。  答案:关系或关系表
(5)问题处理方案的正确而完整的描述称为 【5】    。  答案:算法或程序或流程图  
(6)面向对象的语言将客观世界都看成由各种对象组成,共同特征和行为的对象组成类,类是变量和 【6】    的集合体。  答案:方法  
(7)Java源文件中最多只能有一个 【7】    类,其它类的个数不限。  答案:public  
(8)在Java中所实现的多维数组,实际上是由一维数组构成的 【8】    。  答案:数组的数组  
(9)StringBuffer类提供 【9】    字符串对象的表示。  答案:可变或可编辑  
(10)每个Applet程序必须有一个类是 【10】    类的子类。  答案:Applet  
(11)线程在生命期中要经历5种状态,分别是新建状态、可运行状态、运行状态、 【11】    状态和终止状态。  答案:阻塞  
(12)FileInputStream是字节流;BufferedWriter是字符流;ObjectOutputStream是 【12】    。  答案:对象流或对象输出流  
(13)break语句最常见的用法是在switch语句中,通过break语句退出switch语句,使程序从整个switch 语句后面的 【13】    开始执行。  答案:第一条语句  
(14)请阅读下列程序代码,然后将程序的执行结果补充完整。  
public class throwsException {  
static void Proc(int sel)  
throws ArithmeticException,ArrayIndexOutOfBoundsException{  
System.out.println("In Situation"+sel);  
if(sel==0){  
System.out.println("no Exception caught");  
return;  
}else if(sel==1){  
int iArray[]=new int[4];  
iArray[1]=3;  
}  
}  
public static void main(String args[]){  
try{  
Proc(0);  
Proc(1);  
}catch(ArrayIndexOutOfBoundsException e){  
System.out.println("Catch"+e);  
}finally{  
System.out.println("in Proc finally");  
}  
}  
执行结果:  
In.Situation()  
no Exception caught  
【14】     
in Proc finally  
答案:In Situation 1  
(15)当使用Thread t=new Thread(r)创建一个线程时,表达式:r instanceof Thread的值为 【15】    。  答案:false 
.jpg) 
  
 
                    
                
 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号