1.下列叙述中正确的是()。
A.栈是“先进先出”的线性表
B.队列是“先进后出”的线性表
C.循环队列是非线性结构
D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
2.支持子程序调用的数据结构是()。
A.栈
B.树
C.队列
D.二叉树
点击进入>>全国计算机等级考试真题题库全套最新考试资料
3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是()。
A.10
B.8
C.6
D.4
4.下列排序方法中,最坏情况下比较次数最少的是()。
A.冒泡排序
B.简单选择排序
C.直接插入排序
D.堆排序
5.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是()。
A.编辑程序
B.操作系统
C.教务管理系统
D.汇编程序
6.下面叙述中错误的是()。
A.软件测试的目的是发现错误并改正错误
B.对被调试的程序进行“错误定位”是程序调试的必要步骤
C.程序调试通常也被称为Debug
D.软件测试应严格执行测试计划,排除测试的随意性
7.耦合性和内聚性是对模块独立性度量的两个标准,下列叙述中正确的是()。
A.提高耦合性降低内聚性有利于提高模块的独立性
B.降低耦合性提高内聚性有利于提高模块的独立性
C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度
D.内聚性是指模块闻互相连接的紧密程度
8.数据库应用系统中的核心问题是()。
A.数据库设计
B.数据库系统设计
C.数据库维护
D.数据库管理员培训
9.有两个关系R、S如下:
由关系R通过运算得到关系S,则所使用的运算为()。
A.选择
B.投影
C.插入
D.连接
点击进入>>全国计算机等级考试真题题库全套最新考试资料
10.将E—R图转换为关系模式时,实体和联系都可以表示为()。
A.属性
B.键
C.关系
D.域
11.Java虚拟机(JVM)运行Java代码时,不会进行的操作是()。
A.加载代码
B.校验代码
C.编译代码
D.执行代码
12.Java程序的并发机制是()。
A.多线程
B.多接口
C.多平台
D.多态性
13.在方法内部使用,代表对当前对象自身引用的关键字是()。
A.super
B.This
C.Super
D.this
14.阅读下列程序
publicclassVariableUse{
publicstaticvoidmain(String[]args){
inta;
if(a==8){
intb=9;
System.OUt.println("a="+a):
System.out.println("b="+b);
}
System.Out.println("a="+a):
System.OUt.println("b="+b);
}
}
该程序在编译时的结果是()。
A.变量a未赋值
B.第二个System.out.println("b="+b)语句中,变量b作用域有错
C.第二个System.out.println("a="+a)语句中,变量a作用域有错
D.第一个System.out.println("b="+b)语句中,变量b作用域有错
15.下列不属于Swing的构件是()。
A.JButton
B.JLabel
C.JFrame
D.JPane
16.对鼠标单击按钮操作进行事件处理的接口是()。
A.MouseListener
B.WindowListener
C.ActionListener
D.KeyListener
17.AWT中用来表示颜色的类是()。
A.Font
B.Color
C.Panel
D.Dialog
18.下列运算符中,优先级最高的是()。
A.++
B.十
C.*
D.>
19.Java语言中属于跳转语句的是()
A.try
B.catch
C.finally
D.break
20.阅读下列利用递归来求n!的程序。
classFactorialTest{
staticlongFactorial(intn){//定义Factorial()方法
if(n==1)
returnl;
else
returnn*Factorial{};
}
publicstaticvoidmain{Stringa[]}{
//main()方法
intn=8:
System.out.println{n+"!="+Factorial
(n)};
}
}
为保证程序正确运行,在下画线处应该填入的参数是()。
A.n-1
B.n-2
C.n
D.n+1
点击进入>>全国计算机等级考试真题题库全套最新考试资料
21.阅读下列代码:
publicclassPerson{
staticintarr[]=newint[10];
publicstaticvoidmain(Stringargs){
System.out.println{arr[9]);
}
}
该代码的运行结果是()。
A.编译时将产生错误
B.编译时正确,运行时将产生错误
C.输出零
D.输出空
22.在Java中,若要使用一个包中的类时,首先要求对该包进行导入,其关键字是()。
A.import
B.package
C.include
D.packet
23.继承是面向对象编程的一个重要特征,它可降低程序的复杂性并使代码()。
A.可读性好
B.可重用
C.可跨包访问
D.运行更安全
24.阅读下列代码片段
classInterestTest——ActionListener{
public"voidactionPerformed(ActionEventevent){
doubleinterest=balance*rate/100;
balance+=interest;
NumberFormatformat=NumberFormat.getCur-
rencyInstance();
System.OUt.print]b("balance="+formatter.
format(balance));
}
Privatedoublerate;
}
在下画线处,应填的正确选项是()。
A.Implementation
B.Inheritance
C.implements
D.extends
25.下列方法中,不属于类Strin9的方法是()。
A.toLowerCase()
B.valueOf()
C.charAt()
D.append()
26.grid[9][5]描述的是()。
A.二维数组
B.一维数组
C.五维数组
D.九维数组
27.Java类库中,将信息写入内存的类是()。
A.java.io.FileOutputStream
B.java.io.ByteArrayOutputStream
C.java.io.BufferedOutputStream
D.java.io.DataOutputStream
28.阅读下列Java语句:
ObjectOutputStreamOUt=newObjeetOutputStream
(new("employee.dat"));
在下画线处,应填的正确选项是()。
A.File
B.FileWriter
C.FileOutputStream
D.Outputstream
29.使新创建的线程参与运行调度的方法是()。
A.run()
B.start()
C.init()
D.resume()
30.Java中的线程模型由三部分组成,与线程模型组无关的是()。
A.虚拟的CPU
B.程序代码
C.操作系统的内核状态
D.数据
31.当Applet需要更新显示内容时,应该调用的方法是()。
A.paint
B.update()
C.start()
D.repaint()
32.向Applet传递参数的正确描述是()。
A.<paramname=age,value=20>
B.<appletcode=Try.classwidth=100,height=100,age=33>
C.<name=age,value=20>
D.<appletcode=Try.classname=age,value=20>
33.Applet的默认布局管理器是()。
A.BorderLayout
B.FlowLayout
C.GridLayout
D.PanelLayout
34.阅读下列代码段。
classTestimplementsRunnable{
publicintrun(){
inti=0:
while(true){
i++:
System.OUt.println("i="+i);
}
}
}
上述代码的编译结果是()。
A.程序通过编译并且run()方法可以正常输出递增的i值
B.程序通过编译,调用run()方法将不显示任何输出
C.程序不能通过编译,因为while的循环控制条件不能为“true”
D.程序不能通过编译,因为run()方法的返回值类型不是void
35.如果线程调用下列方法,不能保证使该线程停止运行的是()。
A.sleep()
B.stop()
C.yield()
D.wait()
36.假设用一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有的元素个数为()。
A.50
B.19
C.1
D.20
37.在E-R图中,表示实体联系的框是()。
A.矩形
B.椭圆形
C.菱形
D.正方形
38.Java语青中,对当前对象的父类对象进行引用的关键字是()。
A.case
B.super
C.char
D.break
39.能打印出一个双引号的语句是()。
A.System.out.println{""};
B.System.out.println{"*"};
C.System.OUt.println{¨/"};
D.System.OUt.println(¨\¨"};
40.使下列程序正常运行并且输出“Hello!”,横线处应填写的内容是()。
classTest{
publicstaticvoidmain(string[]args){
Testt=newTest();
t.start();
}
Publicvoidrun(){
System.out.println("Hello!¨);
)
A.extendsThread
B.extendsFloat
C.extendsIostream
D.extendsStdio
1.D。【解析】本题考查了栈、队列、循环队列的基本概念,栈的特点是先进后出,队列的特点是先进先出,根据数据结构中各数据元素之间的复杂程度,将数据结构分为线性结构与非线性结构两类。有序线性表既可以采用顺序存储结构,也可以采用链式存储结构。
2.A。【解析】根据栈的定义,栈是一种限定在一端进行插入与删除的线性表。在主函数调用子函数时,主函数会保持当前状态,然后转去执行子函数,把子函数的运行结果返回到主函数,主函数继续向下执行,这种过程符合栈的特点。所以一般采用栈式存储方式。
3.C。【解析】根据二叉树的性质判定,在任意二叉书时中,度为0的叶子结点总是比度为2的结点多一个。
4.D。【解析】本题考查排序的比较次数,冒泡排序、简单选择排序和直接插入排序在最坏的情况下比较次数为n(n一1)/2,而堆排序法在最坏的情况下需要比较的次数为O(nlog2n)。
5.C。【解析】编译程序和汇编程序属于开发工具.操作系统属于系统软件,而教务管理系统属于应用软件。
6.A。【解析】软件测试的目的是为了发现错误及漏洞而执行程序的过程。软件测试要严格执行测试计划。程序调式通常也称Debug,对被调试的程序进行“错误”定位是程序调试的必要步骤。
7.B。【解析】耦合是指模块间相互连接的紧密程度,内聚性是指在一个模块内部各个元素间彼此之间接合的紧密程序。高内聚、低耦合有利于模块的独立性。
8.A。【解析】数据库设计的目的是设计一个能满足用户要求,性能良好的数据库。所以数据库设计的核心是数据库应用。
9.B。【解析】本题考察关系的运算,一个关系R通过投影运算后仍为一个关系R’,R’是由R中投影运算所得到的域的列所组成的关系。选择运算主要是对关系R中选择由满足逻辑条件的元组所组成的一个新关系,所以题中关系S是由R投影所得。
10.C。【解析】将E-R图转换为关系模式时,实体和联系都可以表示为关系。
11.A。【解析】Java虚拟机加载代码是在运行前的操作。运行代码时会校验、编译和执行代码。
12.A。【解析】Java是通过多线程实现并发机制的。多线程是指一个程序中包含多个执行流,多线程程序设计的含义是可以将程序任务分成几个并行的子任务。
13.D。【解析】super关键字为实现对父类变量的访问和对父类方法的调用。对当前对象自身的引用应使用this关键字。
14.B。【解析】局部变量b是在if(a==8){}里定义的,作用域也只在这个if语句范围内,第二个System.out.println("b="+b)语句中,变量b超出了作用域。
15.D。【解析】Swing构件中JButton是按钮构件,JLabel为标签构件,JFrame为顶层窗体容器构件。中间容器面板应为JPanel,而不是JPane。
16.C。【解析】动作事件和按钮按下,以及在TextField中按<Enter>键对应的事件为ActionEvent事件,进行处理的接口应为ActionListener。MouseListener是MouseEvent事件的实现接口,响应的是鼠标的移动、单击(不包括单击按钮)事件。
17.B。【解析】AWT中Font是表示字体的类,Color是表示颜色的类,Panel是表示面板的类,Dialog是表示对话框的类。
18.A。【解析】在这些运算符中++运算符优先级最高。
19.D。【解析】Java语言中跳转语句为break。try、catch和finally为异常处理语句。
20.A。【解析】因为在n不为l时,n!=n*(n-1)*(n-2)*…*1=n*(n-1)!,所以此处应为n-1。
21.C。【解析】arr[]为整型数组,分配地址后默认值为0,所以创建数组时也是对每个数组元素赋初值0。
22.A。【解析】定义一个包要用package关键字,使用一个包中的类时,首先要使用import导入这些类所在的包。include为C语言的包含头文件的关键字,不是Java的。
23.B。【解析】继承性是面向对象方法的一个重要基本特性,它使代码可重用,可降低程序复杂性。对一个类的继承是指在现有类(父类)的基础上构建一个新类(子类),子类重用(继承)了父类的方法和状态,同时还可以向新类中增添新的方法和状态。
24.D。【解析】继承父类应使用的关键词为extends。
25.D。【解析】String的方法中,toLowerCase()方法是转换成小写,valueof()方法是获得相应数值,eharAt()方法是提取字符串中指定位置的字符。append()是StringBuffer的方法。
26.A。【解析】这是一个二维数组,[]中的数字是每一维的大小。
27.B。【解析】在java.i0中,分享了ByteArrayInputStream、ByteArrayOutputStream和StringBuffednputStream类可以直接访问内存,其中用ByteArrayOutputStream可以向字节数组(缓冲区)写入数据。
28.C。【解析】ObjeetOutputStream即继承了0utputStream抽象类,又实现了ObjectOutput接口,这是Java用接口技术代替双重继承的例子,其构造方法参数是串行化了的对象。所以,此处应为串行化的文件输出流。
29.B。【解析】start()方法使线程参与运行调度。
30.C。【解析】Java中线程模型包含三部分,①一个虚拟的CPU;②该CPU执行的代码;③代码所操作的数据。
31.B。【解析】Applet与显示相关的有三个方法,①paint()方法,具体执行Applet的绘制;②update()方法,用于更新Applet的显示;③repaint()方法,主要用于Applet的重新显示;Applet程序可以在需要显示更新时调用该方法,通知系统刷新显示。
32.A。【解析】<Applet>标记的参数部分一般格式是[<PARAMNAME=appletParameterVALUE-value>]。
33.B。【解析】Applet是一个面板容器,它默认使用Flow布局管理器,所以可以在Applet中设置并操作AWT构件。
34.D。【解析】while的循环控制条件可以为true,run()方法没有返回值,所以不能是int型,故此程序不能通过编译。
35.C。【解析】线程的方法中sleep()方法的作用是使比当前线程优先级低的线程运行。该方法使一个线程暂停运行一段固定时间。在休眠时间内,线程将不运行,低优先级的线程将有机会运行。yield()方法为只让给同等优先级的线程运行。如果没有同等优先级的线程是可运行状态,yield()方法将什么也不做,即线程将继续运行。stop()方法是强行终止线程。wait()方法是线程间交互的方法,是使一个线程停止运行,进入等待状态。
36.B。【解析】当前栈中的所有元素的个数就是用栈底指针减去栈顶指针。
37.C。【解析】本题考察E-R的关系,在E-R图中,用菱形来表示实体之间的联系。矩形表示实体集,椭圆形表示属性。
38.B。【解析】当子类隐藏了父类的变量,并重写了父类方法后,又要使用父类变量或父类被重写的方法时,可以通过super来实现对父类变量的访问和对父类方法的调用。
39.D。【解析】双引号字符的输出应使用转义字符。
40.A。【解析】从后面重写了run()方法来看,这是通过继承Thread类,并重写run()方法定义线程体,然后创建该子类的对象的方式来创建线程。