1、计算机二级 JAVA 分类模拟题 190 及答案解析(总分:63.60,做题时间:90 分钟)一、选择题(总题数:35,分数:63.60)1.在软件开发中,需求分析阶段产生的主要文档是_。(分数:2.00)A.软件集成测试计划B.软件详细设计说明书C.用户手册D.软件需求规格说明书2.在一个应用程序中有如下定义:int a=1,2,3,4,5,6,7,8,9,10:,为了打印输出数组 a的最后一个元素,下面正确的代码是_。(分数:2.00)A.System.out.println(a10;)B.System.out.pdntln(a9);C.System.out.println(aa.leng
2、th);D.System.out.println(a8);3.一个关系中属性个数为 1 时,称此关系为(分数:1.00)A.对应关系B.单一关系C.一元关系D.二元关系4.阅读下列代码。 public class Test2005 public static void main(String args) System.out.println(0xa5) 其运行结果是_。(分数:2.00)A.0xa5B.10C.0x50D.0xaa5.Java 语言的类型是_。(分数:2.00)A.面向对象语言B.面向过程语言C.汇编程序D.形式语言6.面向对象设计时,对象信息的隐藏主要是通过 _ 实现的。(分
3、数:2.00)A.对象的封装性B.子类的继承性C.系统模块化D.模块的可重用性7.有以下程序: #includestdio.h #define F(X,Y)(X)*(Y) void main() int a=3,b=4; printf(“%d/n“,F(a-,+b); 程序运行后输出的结果是_。(分数:2.00)A.8B.10C.12D.158.下列程序的运行结果是_。 public classMyTest public static void main(String args) int sum=1; for(int j=1;j5;j+) sum*=j; System.out.println(
4、sum); (分数:1.00)A.1B.10C.24D.1209.以下 _ 不是 Java 中有效的关键字。(分数:2.00)A.constB.NULLC.falseD.this10.对于循环队列,下列叙述中正确的是_。(分数:1.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针11.Java 语言中提供处理不同类型流的类包是_。(分数:2.00)A.java.sqlB.java.utilC.java.mathD.java.io12.表示 13 位的八进制数据所代表的字符是 _ 。(分数:1.00)A./TT
5、TB./dddC./UXXXD./XXX13.在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是_。(分数:1.80)A.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同14.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为 90的元素时,查找成功的比较次数为_。(分数:1.80)A.1B.2C.3D.915.下列特点中不属于 Java 的是_。(分数:2.00)A.多线程B.多继承C.跨平台D.动态性16.下列不属于接口 WindowListener 的方法是_。(分数:1.
6、80)A.windowClosing()B.windowClosed()C.windowMinimized()D.windowOpened()17.数据结构中,与所使用的计算机无关的是数据的 _ 。(分数:2.00)A.存储结构B.物理结构C.逻辑结构D.物理和存储结构18.下列数据结构中,能用二分法进行查找的是_。(分数:2.00)A.顺序存储的有序线性表B.循环链表C.二叉链表D.链式存储的有序线性表19.下列有关数组的叙述中,错误的是_。(分数:1.80)A.在同一个环境下,数组与内存变量可以同名,两者互不影响B.可以用一维数组的形式访问二维数组C.在可以使用简单内存变量的地方都可以使用
7、数组元素D.一个数组中各元素的数据类型可以相同,也可以不同20.若变量 a、i 已正确定义,且 i 已正确赋值,合法的语句是 _ 。(分数:2.00)A.a=1B.+i:C.a=a+=5;D.a=int(i);21.下列叙述中,不属于软件需求规格说明书的作用的是 _ 。(分数:2.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析22.下列程序的功能是统计字符串中“array”的个数,在程序的空白处应填入的正确选项是_。 public class FindKeyWords public s
8、tatic void main(Sting args) Sting text= “An array is a data structur that stores a collection of“ +“values of the same type. You access each individual value“ +“through an integer index. For example, if a is an array“ +“of inergers,then aiis the ith integer in the array.“; int arrayCount=0; int inde
9、x=-1; Sting arrarStr=“array“; index=text.indexof(arrayStr); While(index 0) +arrayCount; index+=arrayStr.length(); index=text.indexof(arrayStr,index); System.out.println (“the text contains“+arrayCount+“arrays“); (分数:1.00)A.B.=C.=D.=23.Java 可以跨平台的原因是_。(分数:3.00)A.平台无关性B.公用类库C.操作系统支持D.Java 虚拟机24.阅读下列 J
10、ava 语句: ObjectoutputStream out=new ObjectOutputStream(new_(“employee. dat“); 在下画线处,应填的正确选项是_。(分数:1.80)A.FileB.FileWriterC.FileOutputStreamD.Outputstream25.下面语句会产生编译错误的是 _ 。(分数:2.00)A.float F=1024.0F;B.double D=1024.0;C.byte B=1024;D.char C=1024;26.提供 showDocument()方法,使 Applet 能够请求浏览器访问特定 URL 的类是_。(分
11、数:2.00)A.AppletB.AppletContextC.JappletD.URL27.下列选项中,用于实现接口的关键字是 _(分数:2.00)A.interfaceB.implementsC.abstractD.class28.下列对继承的说法正确的一项是(分数:1.00)A.子类能继承父类的所有方法和状态B.子类能继承父类的非私有方法和状态C.子类只能继承父类的 public 方法和状态D.子类只能继承父类的方法,而不能继承状态29.下列不属于线程生命周期的状态的是 _ 。(分数:2.00)A.新建状态B.可运行状态C.运行状态D.解锁状态30.设有如下三个关系表 (分数:2.00)
12、A.T=RSB.T=RSC.T=RSD.T=R/S31.有两个关系 R 和 T 如下: (分数:2.00)A.选择B.投影C交D并32.有以下程序: main() unsigned a=32768; int b; b=a; printf(“b=%d/n“ ,b); 程序执行后输出的结果是 _ 。(分数:2.00)A.b=32768B.b=32767C.b=-32768D.b=-133.下列描述中,不是线性表顺序存储结构特征的是_。(分数:1.80)A.不便于插入和删除B.需要连续的存储空间C.可随机访问D.需另外开辟空间来保存元素之间的关系34.Java 中的基本数据类型 int 在不同的操作
13、系统平台的字长是_。(分数:1.80)A.不同的B.32 位C.64 位D.16 位35.下列叙述中正确的是 _ 。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的关系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D.上述 3 种说法都不对计算机二级 JAVA 分类模拟题 190 答案解析(总分:63.60,做题时间:90 分钟)一、选择题(总题数:35,分数:63.60)1.在软件开发中,需求分析阶段产生的主要文档是_。(分数:2.00)A.软件集成测试计划B.软件详细设计说明书C.用户手册D.软件需求规格说明
14、书 解析:解析 在软件工程中,需求分析指的是在建立一个新的或改变一个现存的软件系统时描写新系统的目的、范围、定义和功能时所要做的所有工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后才能够分析和寻求新系统的解决方法。需求分析主要是了解用户的需求为以后的设计和测试提供依据,其最后产生的主要文档是软件需求规格说明书。2.在一个应用程序中有如下定义:int a=1,2,3,4,5,6,7,8,9,10:,为了打印输出数组 a的最后一个元素,下面正确的代码是_。(分数:2.00)A.System.out.println(a10;)B.S
15、ystem.out.pdntln(a9); C.System.out.println(aa.length);D.System.out.println(a8);解析:3.一个关系中属性个数为 1 时,称此关系为(分数:1.00)A.对应关系B.单一关系C.一元关系 D.二元关系解析:解析 使学生加深对关系模型数据库基础知识的记忆。 在关系模型数据库中,基本结构是二维表,这种二维表称为关系。关系的列称为属性,一个具有 N 个属性的关系称为 N 元关系。4.阅读下列代码。 public class Test2005 public static void main(String args) Syste
16、m.out.println(0xa5) 其运行结果是_。(分数:2.00)A.0xa5B.10 C.0x50D.0xaa解析:解析 本题考查位逻辑运算及其优先级。是按位取反,优先级最高,所以先对 0xa5(二进制10100101)按位取反(二进制 01011010),然后和 0xaa(二进制 10101010)进行按位与运算,结果为二进制00001010,按照十进制输出,运行结果为 10。5.Java 语言的类型是_。(分数:2.00)A.面向对象语言 B.面向过程语言C.汇编程序D.形式语言解析:6.面向对象设计时,对象信息的隐藏主要是通过 _ 实现的。(分数:2.00)A.对象的封装性 B
17、.子类的继承性C.系统模块化D.模块的可重用性解析:7.有以下程序: #includestdio.h #define F(X,Y)(X)*(Y) void main() int a=3,b=4; printf(“%d/n“,F(a-,+b); 程序运行后输出的结果是_。(分数:2.00)A.8B.10C.12D.15 解析:8.下列程序的运行结果是_。 public classMyTest public static void main(String args) int sum=1; for(int j=1;j5;j+) sum*=j; System.out.println(sum); (分数
18、:1.00)A.1B.10C.24 D.120解析:解析 该程序考查的主要是 sum*=j;这一语句的理解,即 sum=sum*j;由于 sum 的初始值为 1,所以实际上运行的是 1*2*3*4 的值。9.以下 _ 不是 Java 中有效的关键字。(分数:2.00)A.constB.NULL C.falseD.this解析:10.对于循环队列,下列叙述中正确的是_。(分数:1.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针 解析:解析 在循环队列中用队尾指针(Rear)指向队列中的队尾元素,用队头指针(F
19、ront)指向队头元素的前一个位置。在循环队列结构中,一般情况下 rearfront,当存储空间的最后一个位置已被使用,而要进行入队时,只需要存储空间的第一个位置空闲,便可将元素加入到第一个位置,即将存储空间的第一个位置作为队尾。此时便有 frontrear。11.Java 语言中提供处理不同类型流的类包是_。(分数:2.00)A.java.sqlB.java.utilC.java.mathD.java.io 解析:解析 java.io 包封装了不同的类,用于处理不同类型的流,包括字节流、字符流、文件流和对象流等。12.表示 13 位的八进制数据所代表的字符是 _ 。(分数:1.00)A./T
20、TTB./ddd C./UXXXD./XXX解析:13.在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是_。(分数:1.80)A.与文件的结构相同B.与文件目录的层次相同 C.与文件类型相同D.与文件大小相同解析:解析 本题考查 Java 包的概念。Java 采用包来管理类名空间,为编程提供一种命名机制,也是一种可见性限制机制。定义一个包要用 package 关键字,用 package 语句说明一个包时,该包的层次结构必须与文件目录的层次相同。否则,在编译时可能出现查找不到的问题,所以选项 B 正确。14.已知一个有序线性表为(13,18,24,35,47,50,6
21、2,83,90,115,134),当用二分法查找值为 90的元素时,查找成功的比较次数为_。(分数:1.80)A.1B.2 C.3D.9解析:解析 根据二分法查找需要两次:首先将 90 与表中间的元素 50 进行比较,由于 90 大于 50,所以在线性表的后半部分查找;第二次比较的元素是后半部分的中间元素,即 90,这时两者相等,即查找成功。15.下列特点中不属于 Java 的是_。(分数:2.00)A.多线程B.多继承 C.跨平台D.动态性解析:解析 Java 的基本特点有简单易学、面向对象、分布式计算、稳健性、安全性、跨平台和可移植性、解释执行、高效性、多线程、动态性等,因此答案 B 不是
22、 Java 的特点,符合题意。16.下列不属于接口 WindowListener 的方法是_。(分数:1.80)A.windowClosing()B.windowClosed()C.windowMinimized() D.windowOpened()解析:解析 接口 WindowListener 包括以下方法:windowActivated、windowDeactivated、windowClosing、windowClosed、windowIconified、windowDeiconified、windowOpened 方法。所以选 C。17.数据结构中,与所使用的计算机无关的是数据的 _
23、。(分数:2.00)A.存储结构B.物理结构C.逻辑结构 D.物理和存储结构解析:解析 数据的一种逻辑结构可以对应多种存储结构,数据的存储结构可以是顺序存储结构也可以是链式存储结构。数据的逻辑结构与计算机无关,只是抽象地反映数据元素之间的逻辑关系。18.下列数据结构中,能用二分法进行查找的是_。(分数:2.00)A.顺序存储的有序线性表 B.循环链表C.二叉链表D.链式存储的有序线性表解析:解析 二分法查找只用于顺序存储的有序线性表,而顺序查找用于顺序存储的非有序线性表和线性链表。19.下列有关数组的叙述中,错误的是_。(分数:1.80)A.在同一个环境下,数组与内存变量可以同名,两者互不影响
24、 B.可以用一维数组的形式访问二维数组C.在可以使用简单内存变量的地方都可以使用数组元素D.一个数组中各元素的数据类型可以相同,也可以不同解析:解析 整个数组的数据类型为 A(Array),而各个数组元素可以分别存放不同类型的数据。在使用数组和数组元素时,应注意如下问题。在任何能使用简单内存变量的地方都可以使用数组元素。在同一个环境下,数组名不能与简单变量名重复。可以用一维数组的形式访问二维数组。20.若变量 a、i 已正确定义,且 i 已正确赋值,合法的语句是 _ 。(分数:2.00)A.a=1B.+i: C.a=a+=5;D.a=int(i);解析:21.下列叙述中,不属于软件需求规格说明
25、书的作用的是 _ 。(分数:2.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析 解析:22.下列程序的功能是统计字符串中“array”的个数,在程序的空白处应填入的正确选项是_。 public class FindKeyWords public static void main(Sting args) Sting text= “An array is a data structur that stores a collection of“ +“values of the same ty
26、pe. You access each individual value“ +“through an integer index. For example, if a is an array“ +“of inergers,then aiis the ith integer in the array.“; int arrayCount=0; int index=-1; Sting arrarStr=“array“; index=text.indexof(arrayStr); While(index 0) +arrayCount; index+=arrayStr.length(); index=t
27、ext.indexof(arrayStr,index); System.out.println (“the text contains“+arrayCount+“arrays“); (分数:1.00)A.B.=C.=D.= 解析:解析 while 循环首先计算终止条件,当布尔表达式(termiantion)的值为 true 时,循环执行大括号中的语句。若某次判断其值为 false,则结束循环。若首次计算条件就不满足,循环体中的语句一次都不会被执行。所以程序中只有当 index=0 时才会执行 while 循环。因此,本题的正确答案是 D。23.Java 可以跨平台的原因是_。(分数:3.00)
28、A.平台无关性B.公用类库C.操作系统支持D.Java 虚拟机 解析:解析 Java 体系中提供了 Java 虚拟机,所有 Java 代码在编译时不直接形成机器代码,而是形成一种中间代码,运行于虚拟机之上。正是虚拟机的机制使得 Java 能良好的跨平台。24.阅读下列 Java 语句: ObjectoutputStream out=new ObjectOutputStream(new_(“employee. dat“); 在下画线处,应填的正确选项是_。(分数:1.80)A.FileB.FileWriterC.FileOutputStream D.Outputstream解析:解析 Objec
29、tOutputStream 即继承了 OutputStream 抽象类,又实现了 ObjectOutput 接口,这是Java 用接口技术代替双重继承的例子,其构造方法参数是串行化了的对象。所以,此处应为串行化的文件输出流。25.下面语句会产生编译错误的是 _ 。(分数:2.00)A.float F=1024.0F;B.double D=1024.0;C.byte B=1024; D.char C=1024;解析:解析 本题考查考生对 Java 中数据类型的理解。为了防止计算机高低位字节存储顺序不同,通常byte 类型用来表示数据避免出错,因为它只有 8bit,范围是:-128+127。flo
30、at 类型数的表示范围是:-3.40282347E383.40282347E38;double 类型数的表示范围是:-1.79769313486231570E3081.79769313486231570E308;char 类型在内存中占 16bit,表示范围是065535。26.提供 showDocument()方法,使 Applet 能够请求浏览器访问特定 URL 的类是_。(分数:2.00)A.AppletB.AppletContext C.JappletD.URL解析:解析 通过 AppletContext 的 showDocument()方法,Applet 可以通知浏览器在哪个窗口显示
31、哪个URL 中的文件。27.下列选项中,用于实现接口的关键字是 _(分数:2.00)A.interfaceB.implements C.abstractD.class解析:解析 interface 是定义接口时用的关键字;abstract 是用来声明抽象类或方法的;class 是声明一个类的关键字;implements 是用来实现接口的关键字。所以选项 B 是正确的。28.下列对继承的说法正确的一项是(分数:1.00)A.子类能继承父类的所有方法和状态 B.子类能继承父类的非私有方法和状态C.子类只能继承父类的 public 方法和状态D.子类只能继承父类的方法,而不能继承状态解析:解析 本题
32、考查继承的概念。继承性是面向对象方法的一个重要基本特征,它使代码可重用,可降低程序复杂性。对一个类的继承也就是构件了一个子类,于类继承了父类的方法和状态,同时还可以向新类中增添新的方法和状态。由此可见选项 A 正确。29.下列不属于线程生命周期的状态的是 _ 。(分数:2.00)A.新建状态B.可运行状态C.运行状态D.解锁状态 解析:30.设有如下三个关系表 (分数:2.00)A.T=RSB.T=RSC.T=RS D.T=R/S解析:31.有两个关系 R 和 T 如下: (分数:2.00)A.选择B.投影C交D并 解析:解析 关系的选择运算是指从关系 R 中得到满足给定条件的元组组成新的关系
33、。由题可以看出,T 是由满足条件 R.B=T.B and R.C=T.C 进行选择得到的。32.有以下程序: main() unsigned a=32768; int b; b=a; printf(“b=%d/n“ ,b); 程序执行后输出的结果是 _ 。(分数:2.00)A.b=32768B.b=32767C.b=-32768 D.b=-1解析:33.下列描述中,不是线性表顺序存储结构特征的是_。(分数:1.80)A.不便于插入和删除B.需要连续的存储空间C.可随机访问D.需另外开辟空间来保存元素之间的关系 解析:解析 线性表特点是逻辑上相邻的元素在物理位置上也相邻。数据元素之间逻辑上的先后
34、关系自动隐含在物理位置的相邻元素之中,因此不需要另外开辟空间来保存元素之间的关系。34.Java 中的基本数据类型 int 在不同的操作系统平台的字长是_。(分数:1.80)A.不同的B.32 位 C.64 位D.16 位解析:解析 Java 的基本数据类型的字长是与平台无关的,int 型字长为 32。35.下列叙述中正确的是 _ 。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的关系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小 D.上述 3 种说法都不对解析:解析 面向对象的程序设计是用对象模拟问题领域中的实体,各对象之间相对独立,相互依赖性小,通过消息来实现对象之间的相互联系。