2009年9月java试题及答案

2009年9月全国计算机等级考试二级笔试试卷



Java语言程序设计



(考试时间90分钟,满分100分)



一、选择题(每小题2分,共70分)

  (1)下列数据结构中,属于非线性结构的是
  A)循环队列
  B)带链队列
  C)二叉树
  D)带链栈
  
  (2)下列数据结构中,能够按照“先进后出”原则存取数据的是
  A)循环队列
  B)栈
  C)队列
  D)二叉树
  
  (3)对于循环队列,下列叙述中正确的是
  A)队头指针是固定不变的
  B)队头指针一定大于队尾指针
  C)队头指针一定小于队尾指针
  D)队头指针可以大于队尾指针,也可以小于队尾指针
  
  (4)算法的空间复杂度是指
  A)算法在执行过程中所需要的计算机存储空间
  B)算法所处理的数据量
  C)算法程序中的语句或指令条数
  D)算法在执行过程中所需要的临时工作单元数
  
  (5)软件设计中划分模块的一个准则是
  A)低内聚低耦合
  B)高内聚低耦合
  C)低内聚高耦合
  D)高内聚高耦合

  (6)下列选项中不属于结构化程序设计原则的是
  A)可封装
  D)自顶向下
  C)模块化
  D)逐步求精
(7)软件详细设计产生的图如下:
  
  该图是
  A)N-S图
  B)PAD图
  C)程序流程图
  D)E-R图
  
  (8)数据库管理系统是
  A)操作系统的一部分
  B)在操作系统支持下的系统软件
  C)一种编译系统
  D)一种操作系统
  
  (9)在E-R图中,用来表示实体联系的图形是
  A)椭圆图
  B)矩形
  C)菱形
  D)三角形
  
  (10)有三个关系R,S和T如下:
  
  其中关系T由关系R和S通过某种操作得到,该操作为
  A)选择
  B)投影
  C)交
  D)并
(11)用于设置组件大小的方法是
  A)paint( )
  B)setSize( )
  C)getSize( )
  D)repaint( )
  
  (12)点击窗口内的按钮时,产生的事件是
  A)MouseEvent
  B)WindowEvent
  C)ActionEvent
  D)KeyEvent
  
  (13)AWT中用来表示对话框的类是
  A)Font
  B)Color
  C)Panel
  D)Dialog
  
  (14)下列运算符中,优先级最高的是
  A)+=
  B)= =
  C)&&
  D)++
  
  (15)下列运算结果为1的是
  A)8>>1
  B)4>>>2
  C)8<<1
  D)4<<<2

  (16)下列语句中,可以作为无限循环语句的是
  A)for(;;) {}
  B)for(int i=0; i<10000;i++) {}
  C)while(false) {}
  D)do {} while(false)
(17)下列表达式中,类型可以作为int型的是
  A)“abc”+”efg”
  B)“abc”+’efg’
  C)‘a’+’b’
  D)3+”4”
  
  (18)阅读下列程序
  Public class Test implements Runnable{
  Private int x=0;
  Private int y=o;
  boolean flag=true;
  Public static void main(string[ ] args) {
  Test  r =new Test( );
  Thead t1=new Thead(r);
  Thead t2=new Thead(r);
  t1.start( );
  t2.start( );
  }
  Public void run(){
  While(flag) {
  x++;
  y++;
  system.out.println(“(” +x_ “,”+y+”)”);
  if (x>=10)
  flag=false;
  }
  }
  }
  下列对程序运行结果描述的选项中,正确的是
  A)每行的(x,y)中,可能有;每一对(x,y)值都出现两次。
  B)每行的(x,y)中,可能有;每一对(x,y)值仅出现一次。
  C)每行的(x,y)中,可能有x=y;每一对(x,y)值都出现两次。
  D)每行的(x,y)中,可能有x=y;每一对(x,y)值都出现一次。
(19)如果线程正处于运行状态,则它可能到达的下一个状态是
  A)只有终止状态
  B)只有阻塞状态和终止状态
  C)可运行状态,阻塞状态,终止状态
  D)其他所有状态
  
  (20)在下列程序的空白处,应填入的正确选项是
  import java.io.*;
  Public class writeInt{
  Public static void main(string[ ] a) {
  Int[ ] myArray = {10,20,30,40};
  try{
  DataOutputSystem dos= new DataOutputSystem
  (new FileOutputSystem(“ints.dat”));
  for  (int i=0;I<myArray.length;i++)
  dos。writeInt(myArray[i]);
  dos.
  System.out.println
  (“Have written binary file ints.dat”);
  }
  Catch(IOException ioe)
  {    System.out.println(“IO Exception”);
  }
  }
  }
  A)start( )
  B)close( )
  C)read( )
  D)write( )
  
  (21)在一个线程中调用下列方法,不会改变该线程运行状态的是
  A)yield方法
  B)另一个线程的join方法
  C)sleep方法
  D)一个对象的notify方法
(22)在关闭浏览器时调用,能够彻底终止Applet并释放该Applet所有资源的方法是
  A)stop( )
  B)destroy( )
  C)paint( )
  D)start( )
  
  (23)为了将HelloApplet(主类名为HelloApplet.class)嵌入在greeting.html文件中,应该在下列greeting.html文件的横线处填入的代码是
  <HTML>
  <HEAD>
  <TITLE> Greetings </TITLE>
  </HEAD>
  <BODY>
  <APPLET ______>
  </APPLET>
  </BODY>
  </HTML>
  A)HelloApplet.class
  B)CODE=” HelloApplet.class”
  C)CODE=” HelloApplet.class” WIDTH=150 HEIGHT=25
  D)CODE=” HelloApplet.class” WIDTH=10 HEIGHT=10
  
  (24)下列变量名的定义中,符合Java命名约定的是
  A)fieldname
  B)super
  C)Intnum
  D)$number
  
  (25)自定义异常类的父类可以是
  A)Error
  B)VirtuaMachineError
  C)Exception
  D)Thread

(26)阅读下列程序片段
  Public void test(){
  Try{
  sayHello();
  system.out.println(“hello”);
  } catch (ArrayIndexOutOfBoundException e) {
  System.out.println(“ArrayIndexOutOfBoundException”);
  }catch(Exception e){
  System.out.println(“Exception”);
  }finally {
  System.out.println(“finally”);
  }
  }
  如果sayHello( )方法正常运行,则test( )方法的运行结果将是
  A)Hello
  B)ArrayIndexOutOfBondsException
  C)Exception
  Finally
  D)Hello
  Finally
  
  (27)为使Java程序独立于平台,Java虚拟机把字节码与各个操作系统及硬件
  A)分开
  B)结合
  C)联系
  D)融合
  
  (28)Java中的基本数据类型int在不同的操作系统平台的字长是
  A)不同的
  B)32位
  C)64位
  D)16位
  (29)String、StingBuffer都是______类,都不能被继承。
  A)static
  B)abstract
  C)final
  D)private
(30)下列程序的功能是统计字符串中“array”的个数,在程序的空白处应填入的正确选项是
  public class FindKeyWords{
  public static void main(sring[] 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 a[i] is the ith integer in the array.”;
  Int arrayCount =0;
  Int idex = -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”);
  }
  }
  A)<
  B)=
  C)<=
  D)>=

  (31)构造方法名必须与______相同,它没有返回值,用户不能直接调用它,只能通过new调用。
  A)类名
  B)对象名
  C)包名
  D)变量名

  (32)在多线程并发程序设计中,能够给对象x加锁的语句是
  A)x.wait( )
  B)synchronized(x)
  C)x.notify( )
  D)x.synchronized( )
(33)Java中类ObjectOutputStream支持对象的写操作,这是一种字节流,它的直接父类是
  A)Writer
  B)DataOutput
  C)OutputStream
  D)ObjectOutput
  
  (34)在下列程序的空白处,应填入的正确选项是
  Import java.io.*;
  Pulilc class ObjectStreamTest{
  Publilc static void main(string args[]) throws IOException{
  ObjectOutputStream oos= new ObjectOutputStream
  (new FileOutputStream(“serial.bin”));
  Java.util.Date d= new Java.util.Date();
  Oos         (d);
  ObjectInputStream ois=
  new ObjectInputStream(new FileOutputStream(“serial.bin”));
  try{
  java.util.date restoredDate =
  (Java.util.Date) ois.readObject();
  System.out.println
  (“read object back from serial.bin file:”
  + restoredDate);
  }
  Catch (ClassNotFoundException  cnf) {
  System.out.println (“class not found”);
  }
  }
  A)WriterObject
  B)Writer
  C)BufferedWriter
  D)WriterObject
  
  (35)Class类的对象由______自动生成,隐藏在.class文件中,它在运行时为用户提供信息。
  A)Java编译器
  B)Java解释器
  C)Java new 关键字
  D)Java类分解器
 2009年9月21日 发表评论 进入社区
    二、填空题(每空2分,共30分)
  (1)某二叉树由5个度为2的结点以及3个度为1的结点,则该二叉树中共有 【1】 个结点。
  
  (2)程序流程图中的菱形框表示的是 【2】 。
  
  (3)软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中【3】阶段产生“软件需求规格说明书“。
  
  (4)在数据库技术中,实体集之间的联系可以是一对一或一对多的,那么“学生“和”可选课程“的联系为 【4】 。
  
  (5)人员基本信息一般包括:身份证号、姓名、性别、年龄等。其中可以做主关键字的是 【5】 。

  (6)按照Java的线程模型,代码和 【6】 构成了线程体。
  
  (7)在多线程程序设计中,如果采用继承Thread类的方式创建线程,则需要重写Thread类的 【7】 ()方法。
  
  (8)在下列Java applet 程序的横线处填入代码,使程序完整并能够正确运行。
  Import java. awt. *;
  Import java. applet. *;
  Public class Greeting extends applet{
  Public void  【8】 (Graphics  g) {
  g.drawSting(“how are you!”,10,10);
  }
  }
  
  (9)在Java语言中,用 【9】 修饰符定义的类为抽象类。
  
  (10)在Java中,字符是以16位的 【10】 码表示。
(11)请在下列程序的空白处,填上适当的内容:
  Import java. awt. *;
  Import java. util. *;
  Class BufferTest{
  Public static void main(string args[])
  Throws IOException{
  FileOutputStream unbuf=
  new FileOutputStream(“test.one”) ;
  BufferedOutputStream buf=
  new  【11】 (new FileOutputStream(“test.two”));
  System.out.println
  (“write file unbuffered: ” + time(unbuf) + “ms”);
  System.out.println
  (“write file buffered: ” + time(buf) + “ms”);
  }
  Static int time (OutputStream  os)
  Throws IOException{
  Date then = new Date();
  for (int  i=0; i<50000; i++){
  os.write(1);
  }
  }
  os.close();
  return(int)(()new Date()).getTime() - then.getTime());
  }
  
  (12)代码System.out.println(066)的输出结果是 【12】 。
  
  (13)Swing中用来表示工具栏的类是 javax.swing. 【13】 。
  
  (14)表达式(10*49.3)的类型是 【14】 型。
  
  (15)抛出异常的语句是 【15】 语句。

答案:二级java答案:
1-5:CBDAB
6-10:ACBCD
11-15:BCDDB
16-20:ACBCB
21-25:BBCAC
26-30:DABCD
31-35:ABCDA
1-15 :
14                   
逻辑条件 
需求分析  
多对多          
身份证号码 
数据        
run             
paint           
abstruct                
Unicode 
BufferedOutputStream     
54    
JToolBar     
double
throwException

你可能感兴趣的:(java,C++,c,算法,C#)