2005年9月全國計算機等級考試二級JAVA筆試試題及答案

字號:

為大家收集整理了《2005年9月全國計算機等級考試二級JAVA筆試試題及答案》供大家參考,希望對大家有所幫助?。。?BR>    一、選擇題(每小題2分,共70分)
    下列各題A.、B.、C.、D.四個選項中,只有一個選項是正確的,請將正確選項涂寫
    在答題卡相應位置上,答在試卷上不得分。
    (1)數(shù)據(jù)的存儲結構是指( )。
    A.存儲在外存中的數(shù)據(jù)
    B.數(shù)據(jù)所占的存儲空間量
    C.數(shù)據(jù)在計算機中的順序存儲方式
    D.數(shù)據(jù)的邏輯結構在計算機中的表示
    答案:D
    (2)下列關于棧的描述中錯誤的是(?。?。
    A. 棧是先進后出的線性表
    B. 棧只能順序存儲
    C. 棧具有記憶作用
    D. 對棧的插入與刪除操作中,不需要改變棧底指針
    答案:B
    (3)對于長度為n的線性表,在最壞情況下,下列各排序法所對應的比較次數(shù)中正確的是(?。?BR>    A.冒泡排序為n/2
    B.冒泡排序為n
    C.快速排序為n
    D.快速排序為n(n-1)/2
    答案:D
    (4)對長度為n的線性表進行順序查找,在最壞情況下所需要的比較次數(shù)為(?。?。
    A.log2n
    B.n/2
    C.n
    D.n+1
    答案:C
    (5)下列對于線性鏈表的描述中正確的是(?。?BR>    A. 存儲空間不一定是連續(xù),且各元素的存儲順序是任意的
    B. 存儲空間不一定是連續(xù),且前件元素一定存儲在后件元素的前面
    C. 存儲空間必須連續(xù),且前件元素一定存儲在后件元素的前面
    D. 存儲空間必須連續(xù),且各元素的存儲順序是任意的
    答案:A
    (6)下列對于軟件測試的描述中正確的是(?。?。
    A. 軟件測試的目的是證明程序是否正確
    B. 軟件測試的目的是使程序運行結果正確
    C. 軟件測試的目的是盡可能多地發(fā)現(xiàn)程序中的錯誤
    D. 軟件測試的目的是使程序符合結構化原則
    答案:C
    (7)為了使模塊盡可能獨立,要求(?。?。
    A. 模塊的內聚程度要盡量高,且各模塊間的耦合程度要盡量強
    B. 模塊的內聚程度要盡量高,且各模塊間的耦合程度要盡量弱
    C. 模塊的內聚程度要盡量低,且各模塊間的耦合程度要盡量弱
    D. 模塊的內聚程度要盡量低,且各模塊間的耦合程度要盡量強
    答案:B
    (8)下列描述中正確的是( )。
    A.程序就是軟件
    B.軟件開發(fā)不受計算機系統(tǒng)的限制
    C.軟件既是邏輯實體,又是物理實體
    D.軟件是程序、數(shù)據(jù)與相關文檔的集合
    答案:D
    (9)數(shù)據(jù)獨立性是數(shù)據(jù)庫技術的重要特點之一,所謂數(shù)據(jù)獨立性是指(?。?。
    A.數(shù)據(jù)與程序獨立存放
    B.不同的數(shù)據(jù)被存放在不同的文件中
    C.不同的數(shù)據(jù)只能被對應的應用程序所使用
    D.以上三種說法都不對
    答案:D
    (10)用樹形結構表示實體之間聯(lián)系的模型是(?。?。
    A.關系模型
    B.網(wǎng)狀模型
    C.層次模型
    D.以上三個都是
    答案:C
    (11)在Java中,負責對字節(jié)代碼解釋執(zhí)行的是(?。?。
    A.垃圾回收器
    B.虛擬機
    C.編譯器
    D.多線程機制
    答案:B
    (12)下列敘述中,正確的是
    A.Java語言的標識符是區(qū)分大小寫的
    B.源文件名與public類名可以不相同
    C.源文件擴展名為.jar
    D.源文件中public類的數(shù)目不限
    答案: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時,使用該文件作為參數(shù)的類是
    A.BufferReader
    B.DataInputStream
    C.DataOutoutStream
    D.FileInputStream
    答案:D
    (19)下列構造方法的調用方式中,正確的是
    A.按照一般方法調用
    B.由用戶直接調用
    C.只能通過new自動調用
    D.被系統(tǒng)調用
    答案:C
    (20)類Panel默認的布局管理器是
    A.GridLayout
    B.BorderLayout
    C.FlowLayout
    D.CardLayout
    答案:C
    (21)在Java中,能實現(xiàn)多重繼承效果的方式是
    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)十進制數(shù)16的16進制表示格式是
    A.0x10
    B.0x16
    C.0xA
    D.16
    答案:A
    (25)int型public成員變量MAX_LENGTH,該值保持為常數(shù)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)下列方法中可以用來創(chuàng)建一個新線程的是
    A.實現(xiàn)java.lang.Runnable接口并重寫start()方法
    B.實現(xiàn)java.lang.Runnable接口并重寫run()方法
    C.實現(xiàn)java.lang.Thread類并重寫run()方法
    D.實現(xiàn)java.lang.Thread類并重寫start()方法
    答案:C
    (28)下列關于Java Application與Applet的說法中,正確的是
    A.都包含main()方法
    B.都通過“appletviewer”命令執(zhí)行
    C.都通過“javac”命令編譯
    D.都嵌入在HTML文件中執(zhí)行
    答案:C
    (29)當啟動Applet程序時,首先調用的方法是
    A.stop()
    B.init()
    C.start()
    D.destroy()
    答案:B
    (30)下列關于線程優(yōu)先級的說法中,正確的是
    A.線程的優(yōu)先級是不能改變的
    B.線程的優(yōu)先級是在創(chuàng)建線程時設置的
    C.在創(chuàng)建線程后的任何時候都可以設置
    D.B和C
    答案:C
    (31)當瀏覽器重新返回Applet所在頁面時,將調用Applet類的方法是
    A.start()
    B.init()
    C.stop()
    D.destroy()
    答案:A
    (32)按照Java的標識符命名規(guī)范,下列表示一個類的標識符正確的是
    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)下列程序的功能是在監(jiān)控臺上每隔一秒鐘顯示一個字符串“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. 編譯時將產(chǎn)生錯誤
    B. 編譯時正確,運行時將產(chǎn)生錯誤
    C. 輸出零
    D. 輸出空
    答案:A
    二、填空題(每空2分,共40分)
    請將每空的正確答案寫在【1】至【20】序號的橫線上,答在試卷上不得分。
    (1)某二叉樹中度為2的結點有18個,則該二叉樹中有 【1】   個葉子結點。 答案:19
    (2)在面向對象方法中,類的實例稱為 【2】   。 答案:對象
    (3)診斷和改正程序中錯誤的工作通常稱為 【3】   。 答案:調試或程序調試或軟件調試或Debug(英文字母大小寫均可)或調試程序或調試軟件
    (4)在關系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,每一個二維表稱為 【4】   。 答案:關系或關系表
    (5)問題處理方案的正確而完整的描述稱為 【5】   。 答案:算法或程序或流程圖
    (6)面向對象的語言將客觀世界都看成由各種對象組成,共同特征和行為的對象組成類,類是變量和 【6】   的集合體。 答案:方法
    (7)Java源文件中最多只能有一個 【7】    類,其它類的個數(shù)不限。 答案:public
    (8)在Java中所實現(xiàn)的多維數(shù)組,實際上是由一維數(shù)組構成的 【8】   。 答案:數(shù)組的數(shù)組
    (9)StringBuffer類提供 【9】   字符串對象的表示。 答案:可變或可編輯
    (10)每個Applet程序必須有一個類是 【10】   類的子類。 答案:Applet
    (11)線程在生命期中要經(jīng)歷5種狀態(tài),分別是新建狀態(tài)、可運行狀態(tài)、運行狀態(tài)、 【11】   狀態(tài)和終止狀態(tài)。 答案:阻塞
    (12)FileInputStream是字節(jié)流;BufferedWriter是字符流;ObjectOutputStream是 【12】   。 答案:對象流或對象輸出流
    (13)break語句最常見的用法是在switch語句中,通過break語句退出switch語句,使程序從整個switch 語句后面的 【13】   開始執(zhí)行。 答案:第一條語句
    (14)請閱讀下列程序代碼,然后將程序的執(zhí)行結果補充完整。
    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");
    }
    }
    執(zhí)行結果:
    In.Situation()
    no Exception caught
    【14】  
    in Proc finally
    答案:In Situation 1
    (15)當使用Thread t=new Thread(r)創(chuàng)建一個線程時,表達式:r instanceof Thread的值為 【15】   。 答案:false