试题 百分网手机站

最新计算机二级考试JAVA押密试题

时间:2020-10-28 20:22:11 试题 我要投稿

最新计算机二级考试JAVA押密试题

  为了帮助大家提高计算机二级考试成绩,下面百分网小编为你整理汇总了2017年计算机二级考试JAVA押密试题及答案,希望对你有帮助。

最新计算机二级考试JAVA押密试题

  一、选择题(每小题1分,共40小题,共40分)

  1.常采用的两种存储结构是( )。

  A.顺序存储结构和链式存储结构

  B.散列方法和索引方式

  C.链表存储结构和数组

  D.线性存储结构和非线性存储结构

  2.在深度为5的满二叉树中,叶子结点的个数为( )。

  A.32

  B.31

  C.16

  D.15

  3.下列叙述中错误的是( )。

  A.线性表是由n个元素组成的一个有限序列

  B.线性表是一种线性结构

  C.线性表的所有结点有且仅有一个前件和后件

  D.线性表可以是空表

  4.数据库技术的根本目标是要解决数据的( )。

  A.存储问题

  B.共享问题

  C.安全问题

  D.保护问题

  5.在设计程序时,应采纳的原则之一是( )。

  A.不限制goto语句的使用

  B.减少或取消注解行

  C.程序越短越好

  D.程序结构应有助于读者理解

  6.结构化程序设计的核心和基础是( )。

  A.结构化分析方法

  B.结构化设计方法

  C.结构化设计理论

  D.结构化编程方法

  7.对下列二叉树进行中序遍历的结果是( )。

  A.ACBDFEG

  B.ACBDFGE

  C.ABDCGEF

  D.FCADBEG

  8.软件设计中模块划分应遵循的准则是( )。

  A.低内聚低耦合

  B.高内聚低耦合

  C.低内聚高耦合

  D.高内聚高耦合

  9.算法的有穷性是指( )。

  A.算法程序的运行时间是有限的

  B.算法程序所处理的数据量是有限的

  C.算法程序的长度是有限的

  D.算法只能被有限的用户使用

  10.有3个关系R、S和T如下:

  由关系R和S通过运算得到关系T,则所用的运算为( )。

  A.并

  B.自然连接

  C.笛卡儿积

  D.交

  11.破坏死锁的4个必要条件之一就可以预防死锁。假如规定一个进程在请求新资源之前首先释放已占有的资源则是破坏了( )条件。

  A.互斥使用

  B.部分分配

  C.不可剥夺

  D.环路等待

  12.设有字符序列(Q,H,C,Y,P,A,M,S,R,D,F,X),则新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)是下列( )排序算法一趟扫描的结果。

  A.起泡排序

  B.初始步长为4的希尔排序

  C.二路归并排序

  D.以第一个元素为分界元素的快速排序

  13.下列与算法有关的叙述中,不正确的是( )。

  A.运算是数据结构的一个重要方面,运算的实现步骤用算法来描述

  B.算法是精确定义的一系列规则,它指出怎样从给定的输入信息经过有限步骤产生所求的输出信息

  C.算法的设计采用由粗到细,由抽象到具体的逐步求精的方法

  D.对于算法的分析,指的是分析算法运行所要占用的机器时间,即算法的时间代价

  14.下列关于数据的存储结构的叙述中,正确的是( )。

  A.数据的存储结构是数据间关系的抽象描述

  B.数据的存储结构是逻辑结构在计算机存储器中的实现

  C.数据的存储结构分为线性结构和非线性结构

  D.数据的存储结构对数据的具体实现没有影响

  15.设有一个已按各元素的值排好序的顺序表(长度大于2),现分别用顺序查找法和二分查找法查找与给定值k相等的元素,比较的次数分别是s和b,在查找不成功情况下s和b的关系是( )。

  A.s=b

  B.s>b

  C.s  D.s>=b

  16.下列不属于虚拟机执行过程的特点的是( )。

  A.多线程

  B.动态连接

  C.异常处理

  D.代码安全检查

  17.下列说法中,正确的一项是( )。

  A.Java语言是以类为程序的基本单位的

  B.Java语言是不分大小写的

  C.多行注释语句必须以//开始

  D.在Java语言中,类的源文件名和该类名可以不相同

  18.下列关于实型变量书写正确的是( )。

  A.E3

  B.2e0.3

  C.1.2e3

  D.1.2E0.3

  19.下列与其他选项不相等的是( )。

  A.15

  B.0xF

  C.015

  D.0XF

  20.设a=8,则表达式a>>>1的值是( )。

  A.1

  B.2

  C.3

  D.4

  一、选择题

  1.A。【解析】线性表的存储结构有顺序存储结构和链式存储结构。

  2.C。【解析】根据满二叉树的定义,一棵深度为k且有

  2k-1个结点的二叉树为满二叉树。满二叉树的叶子结点为最后一层的结点数。根据满二叉树的性质,在满二叉树的第i层上至多有2i-1个结点。因此深度为5的满二叉树的叶子结点数为25-1=16个。

  3.C。【解析】线性表是一种线性结构,由n(n≥0)个元素组成,所以线性表可以是空表。但是在线性表中,第一个结点没有前驱,最后一个结点没有后继,其他结点有且只有一个前驱和后继,所以选项C是错误的。

  4.B。【解析】在数据库系统中,需要对数据进行集合、统一的管理,以达到被多个应用程序共享的目标。

  5.D。【解析】程序设计中,程序不要求长度,以结构清晰、易于理解为标准,程序员可以添加注释来助于理解,同时要尽量少用goto语句,否则会破坏程序的结构。

  6.C。【解析】结构化程序设计的核心和基础是结构化设计理论,其中包括:结构化分析方法、结构化设计方法和结构化编程方法。

  7.A。【解析】二叉树的遍历有3种:前序、中序和后序。中序遍历首先遍历左子树或左子结点,然后访问根结点,最后遍历右子树或右子结点。分析本题二叉树,对其进行中序遍历,结果为ACBDFEG。

  8.B。【解析】耦合性和内聚性是模块独立性的两个定性标准,软件设计应该遵循高内聚低耦合的准则。

  9.A。【解析】算法的有穷性是指算法必须在执行有限的步骤后终止。

  10.D。【解析】关系R与S经过交运算后所得到的关系是由那些既在R内又在S内的有序组组成的。记作R∩S。

  11.B。【解析】若一个进程请求新资源之前首先释放已占有的资源,这破坏了部分分配条件。

  12.D。【解析】根据快速排序的算法,新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)为字符序列(Q,H,C,Y,P,A,M,s,R,D,F,x)经过快速排序的算法第一趟扫描后的结果。

  13.D。【解析】算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的'步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量,也就是算法分析,因此选项D错误。算法设计一般采用由粗到细、由抽象到具体的初步求精的方法。

  14.B。【解析】数据的存储结构是逻辑结构在计算机存储器中的实现。为了全面表示一个逻辑结构,它在存储器中的影响包括数据元素自身值的表示和数据元素的表示两方面。

  15.B。【解析】顺序查找的基本思想是:从表的一端开始,顺序扫描线性表,依次将扫描到结点的关键字和给定值k进行比较,若当前扫描到结点的关键字与k相等,则查找成功;若扫描结束后,仍未找到关键字等于k的结点,则查找失败。二分查找法是一种效率较高的查找方法,要求线性表是有序表。基本思想是:首先将待查的k值和有序表R[0]~R[n-1]的中间位置mid上的结点的关键字进行比较,若相等,则查找完成;否则,若R[mid].key>k,则说明待查找的结点只可能在左子表R[0]~R[mid-1]中,我们只需在左子表中继续进行折半查找,若R[mid].key  16.D。【解析】本题考查虚拟机执行过程的特点。Java虚拟机是编译器生成的字节码,不用考虑具体的硬件环境,实现一次编写,随处运行,实现其可移植性。虚拟机执行过程的特点有:多线程、动态连接、异常处理。代码安全检查是Java语言的一个突出特点,但不属于虚拟机执行过程特点。

  17.A。【解析】本题考查考生对Java语言概念的理解,属于考试重点内容,历次考试都有相关内容,应该理解这些基本概念。Java语言是分大小写的,这一点在初学Java时需要特别注意,这一点与C语言有所不同,B选项错误。以//开始的应该是单行的注释语句,因此选项C错误。Java中有三类注释语句:文档注释/**…*/,被javadoc处理,可以建立类的一个外部说明性文件;C语言注释风格/*…*/,用于去掉当前不再使用但仍想保留的代码等;单行注释//,格式上要求注释符//后必须紧跟一个空格,然后才是注释信患。Java程序源文件名必须和public类名相同,否则编译出错,因此选项D错误。只有选项A说法正确。

  18.C。【解析】本题考查实型变量科学计算格式的书写。在科学计算格式中,e或E是指数符,要求在e/E之前必须有数字,选项A错误。同时还要求在e/E之后必须是整数,选项B和选项D错误。虽然题目非常简单,但是不容易正确回答。正确答案为选项C。

  19.C。【解析】本题考查Java语言中的进制换算。考生首先要清楚各种进制的表示方法,整型常量有3种书写格式:十进制整数,如156,-230,345;八进制整数:以0开头,如012表示十进制的l0;十六进制整数:以0x或0X开头,如0X123表示十进制数291。选项A是十进制的15,选项B和选项D都是十六进制中的F相当于十进制的15,选项C为八进制,以0开头,此处Ol5相当于十进制的13,与其他选项不同。

  20.D。【解析】本题考查考生对位运算符中无符号右移运算符的掌握。无符号右移运算符>>>,也叫逻辑右移,用于将一个数的各二进制位全部无符号右移若干位,与运算符>>不同的是左补0,而>>则是最高位移入原来高位的值。在本题中,8的二进制表示是1000,右移一位后变成了0100,对应的十进制数是4。可见,正确答案为选项D。二、基本操作题(共18分)

  本题定义了一个方法add(),用于求两个整形数的和。方法中有两个整形参数a和b,方法体中计算a和b的和sum,并将结果返回。程序中调用add()方法求整数24和34的和,并将结果打印输出。

  public class javal{

  public static void main(String[]args){

  int a=24,b=34;

  System.out.println(add(a,b));

  }

  public static int add( ){

  ;

  sum—a+b;

  ;

  }

  }

  三、简单应用题(共24分)

  本题中,主窗口有一个按钮“显示Dial09”,单击该按钮后显示一个对话框,对话框的标题是“Dial09”,其上有一个文字标签“欢迎学习Java.”,此时仍允许对原来窗口进行操作,当关闭新生成的对话框时退出程序。

  import java.awt.*;

  import java.awt.event.*;

  import javax.swing.*;

  public class java2 extends Frame implements ActionLis-

  tener{

  public static void main(String args[]){

  java2 f=new java2("java2");

  Panel pan=new Panel();

  f.init();

  }

  public java2(String str){

  super(str);

  }

  public void init(){

  addWindowListener(new WindowAdapter(){

  public void windowClosing(WindowEvent e){

  System.exit(0);

  }

  });

  setSize(200,200);

  setLayout(new FlowLayout());

  but=new Button("显示Dialog");

  add(but);

  but.addActionListener(this);

  dig=new Dialog(this,"Dialog", );

  dig.setSize(100,50);

  dig.addWindowListener(new WindowAdapter(){

  public void windowClosing(WindowEvent e){

  ;

  }

  });

  dig.add("Center",new Label("欢迎学习Ja-

  va."));

  setVisible(true);

  }

  public void actionPerformed(ActionEvent e){

  dig.setVisible(true);

  }

  private Dialog dig;

  private Button but;

  } 四、综合应用题(共18分)

  本题的功能是监听鼠标的拖曳操作。窗口中有一个列表框,列表框中列出了当前目录的所有文件,鼠标选中一个或多个文件后拖曳出窗口,此操作的功能是将拖曳的文件复制一份在拖曳的目的目录下。

  import java.awt.*;

  import java.awt.datatransfer.*;

  import java.awt.dnd.*;

  import java.awt.event.*;

  import java.io.*;

  import java.util.*;

  import javax.swing.*;

  public class java3

  {

  public static void main(String[]args)

  {

  JFrame frame=new DragSourceFrame();

  frame.setDefauhCloseOperation(JFrame.EXIT_

  0N_CLoSE);

  frame.show();

  }

  }

  class DragSoureeFrame extends JFrame

  {

  public DragSourceFrame()

  {

  setTitle("java3");

  setSize(WlDTH,HElGHT);

  Container contentPane=getContentPane();

  File f=new File(".").getabsoluteFile();

  File[]files=f.listFiles();

  model=new DefaultListModel();

  for(int i=0;i  try

  {

  model.addElement(files[i].getCanonicalFile());

  }

  catch(IOException exception)

  {

  JOptionPane.showMessageDialog(this,exeep-

  tion);

  }

  fileList=new JList(model);

  contentPane.add(new JScrollPane(fileList),

  BorderLayout.CENTER);

  contentPane.add(new JLabel("从列表中拖曳出文

  件"),

  BorderLayout.NoRTH);

  DragSource dragSource=DragSource.getDefauh-

  DragSource();

  dragSource.createDefaultDragGestureRecognizer

  (fileList,

  DnDConstants. ACTION_COPY_0R_

  MOVE,new

  DragGestureListener()

  {

  public void dragGestureRecognized(

  DragGestureEvent event)

  {

  draggedValues=fileList.getSelectedValues();

  Transferable transferable

  =new FiteListTransferable(draggedValues);

  evenr.startDrag(null,transferable,

  new FileListDragSourceListener());

  }

  });

  }

  private class FileListDragSourceListener imple-

  ments DragSourceAdapter

  {

  public void dragDropEnd(DragSourceDropEvent e-

  vent)

  {

  if(event.getDropSuccess())

  {

  int action=event.getDropAction();

  if(action= =DnDConstants.ACTl0N MOVE)

  {

  for(int i=0;i  model.removeElement(draggedValues[i]);

  }

  }

  }

  }

  private JList fileList;

  private DefauhListModel model;

  private Object[]draggedValues;

  private static final int WIDTH=300;

  private static final int HEIGHT=200;

  }

  class FileListTransferable implements Transferable

  {

  public FileListTransferable(Object[]files)

  {

  fileList=new ArrayList(Arrays.asList(files));

  }

  public DataFlavor[]getTransferDataFlavors()

  {

  return flavors;

  public boolean isDataFlavorSupported(DataFlavor

  flavor)

  {

  return Arrays. asList(flavors), contains(flavor) ;

  }

  public Object getTransferData(DataFlavor flavor)

  throws UnsupportedFlavorException

  if(flavor, equals(DataFlavor, javaFileListFlavor) )

  return fileList;

  else if(flavor, equals(DataFlavor, stringFlavor))

  return fileList, toString() ;

  else

  throw new UnsupportedFlavorException(flavor) ;

  }

  private static DataFlavor[] flavors =

  {

  DataFlavor. j avaFileListFlavor,

  DataFlavor. stringFlavor

  };

  private java. util. List fileList;

  四、综合应用题

  第1处:File f—new File(".").getAbsoluteFile()

  第2处:int i=0;i  第3处:private class FileListDragSoureeListener ex-

  tends DragSourceAdapter

  【解析】第1处是通过绝对路径创建一个File对象f;第2处是files中f文件所在目录下的所有文件名列表,此处就是遍历这些文件名;第3处是定义了一个FileListDragSoureeListener类继承用于接收拖动源事件的抽象适配器类 DragSoureeAdapter。

【最新计算机二级考试JAVA押密试题】相关文章:

1.计算机二级JAVA考试摸底试题

2.计算机二级JAVA考试模拟试题

3.证券从业考试市场基础知识押密试题

4.计算机二级考试Java试题及答案

5.计算机二级JAVA考试精选模拟试题

6.计算机等级考试二级java精选试题

7.计算机二级Java考试巩固试题及答案

8.计算机二级JAVA考试试题及答案

9.计算机二级JAVA考试摸底试题及答案