2013年計算機二級C++模擬試題及答案(3)

字號:

一、選擇題
    1.數(shù)據(jù)結構作為計算機的一門學科,主要研究數(shù)據(jù)邏輯結構、對各種數(shù)據(jù)結構進行運算,及( )
    A.數(shù)據(jù)的存儲結構
    B.計算方法
    C.數(shù)據(jù)映象
    D.邏輯存儲
    【參考答案】 A
    2.在計算機中,算法是指( )
    A.加工方法
    B.解題方案的準確而完整的描述
    C.排序方法
    D.查詢方法
    【參考答案】 B
    3.開發(fā)軟件所需高成本和產品的低質量之間有著尖銳的矛盾,這種現(xiàn)象稱做( )
    A.軟件投機
    B.軟件危機
    C.軟件工程
    D.軟件產生
    【參考答案】 B
    4.開發(fā)大型軟件時,產生困難的根本原因是( )
    A.大系統(tǒng)的復雜性
    B.人員知識不足
    C.客觀世界千變萬化
    D.時間緊、任務重
    【參考答案】 A
    5.數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)之間的關系是( )
    A.數(shù)據(jù)庫包括數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)
    B.數(shù)據(jù)庫系統(tǒng)包括數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)
    C.數(shù)據(jù)庫管理系統(tǒng)包括數(shù)據(jù)庫和數(shù)據(jù)庫系統(tǒng)
    D.3者沒有明顯的包含關系
    【參考答案】 B
    6.下列敘述中正確的是( )
    A.線性表是線性結構
    B.棧與隊列是非線性結構
    C.線性鏈表是非線性結構
    D.二叉樹是線性結構
    【參考答案】 A
    7.已知數(shù)據(jù)表A中每個元素距其最終位置不遠,為節(jié)省時間,應采用的算法是( )
    A.堆排序
    B.直接插入排序
    C.快速排序
    D.直接選擇排序
    【參考答案】 B
    8.下列不屬于結構化分析的常用工具的是( )
    A.數(shù)據(jù)流圖
    B.數(shù)據(jù)字典
    C.判定樹
    D.PAD圖
    【參考答案】 A
    9.下列工具中為需求分析常用工具的是( )
    A.PAD
    B.PFD
    C.N-S
    D.DFD
    【參考答案】 D
    10.數(shù)據(jù)庫的故障恢復一般是由( )
    A.數(shù)據(jù)流圖完成的
    B.數(shù)據(jù)字典完成的
    C.DBA完成的
    D.PAD圖完成的
    【參考答案】 C
    11.關于C++與C語言關系描述中錯誤的是( )
    A.C++語言是C語言的超集
    B.C++語言對C語言進行了擴充
    C.C++語言包含C語言的全部語法特征
    D.C++語言與C語言都是面向對象的程序設計語言
    【參考答案】 D
    12.在C++語言中,不合法的實型數(shù)據(jù)的是( )
    A.0.123
    B.123e3
    C.2.1e3.5
    D.123.0
    【參考答案】 C
    13.下面有關于for循環(huán)的正確描述是( )
    A.for循環(huán)只能用于循環(huán)次數(shù)已經確定的情況
    B.for循環(huán)是先執(zhí)行循環(huán)體語句,后判斷表達式
    C.在for循環(huán)中,不能用break語句跳出循環(huán)體
    D.for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來
    【參考答案】 D
    14.假定int類型變量占用兩個字節(jié),其有定義int x[10]={0,2,4};,則數(shù)組x在內存中所占字節(jié)數(shù)是( )
    A.3
    B.6
    C.10 來源:www.exam8.com
    D.20
    【參考答案】 D
    15.以下敘述正確的是( )
    A.函數(shù)可以嵌套定義但不能嵌套調用
    B.函數(shù)既可以嵌套調用也可以嵌套定義
    C.函數(shù)既不可以嵌套定義也不可以嵌套調用
    D.函數(shù)可以嵌套調用但不可以嵌套定義
    【參考答案】 D
    16.下面的語句中錯誤的是( )
    A.int a=5;int x[a];
    B.const int a=5;int x[a];
    C.int n=5;int *p=new int[a];
    D.const int n=5;int *p=new int[a];
    【參考答案】 A
    17.關于二義性的描述錯誤的是( )
    A.一個子類的兩個父類中都有某個同名成員,在子類中對該成員訪問可能出現(xiàn)二義性
    B.解決二義性可以用對成員名的限定法
    C.父類和子類中同時出現(xiàn)同名函數(shù),也可能存在二義性
    D.一個子類是從兩個父類派生出來的,而這兩個父類又有一個共同的父類,對該父類成員進行訪問時,可能出現(xiàn)二義性
    【參考答案】 C
    18.函數(shù)模板:template
    T add(T x,T y) {return x+y;}
    下列對add函數(shù)的調用不正確的是( )
    A.add< >(1,2)
    B.add(1,2)
    C.add(1.0,2)
    D.add(1.0,2.0)
    【參考答案】 C
    19.this指針是C++實現(xiàn)什么的一種機制?( )
    A.抽象
    B.封裝
    C.繼承
    D.重載
    【參考答案】 B
    20.下列程序的輸出結果是( )
    #include
    class Myclass{
    public:Myclass(int i=0,int j=0)
    {
    y=j;
    }
    void show(){cout<<″x=″<
    void show()const{cout<<″x=″<<″ ″<<″y=″<
    privated:
    int x;int y;
    }; 考試大(www.Examda。com)
    void main()
    {yclass my1(3,4);
    const my2(7,8);
    my1.show();my2.show();}
    A.x=4,y=3;x=7,y=8
    B.x=3,y=4;x=7,y=8 C.x=7,y=8;x=4,y=3
    D.x=8,y=7;x=7,y=8
    【參考答案】 A
    21.在C++語言中,打開一個文件就是將這個文件與一個什么建立關聯(lián)( )
    A.流
    B.類
    C.結構
    D.對象
    【參考答案】 A
    22.執(zhí)行語句for(i=1;i++<4;);,后變量i的值是( )
    A.3
    B.4
    C.5
    D.不定
    【參考答案】 C
    23.下列哪個是C++語言的有效標識符?( )
    A._No1
    B.No.1
    C.12345
    D.int
    【參考答案】 A
    24.下列程序的執(zhí)行結果為( )
    #include
    void main()
    {int a=3,b=0;
    int *p=&a;
    b=+a++;
    cout<<*p<<″,″<
    A.3,4
    B.4,3
    C.3,-4
    D.4,4
    【參考答案】 B
    25.下列選項,不正確的是( )
    A.for(int a=1;a<=10;a++);
    B.int a=1;
    do
    {a++}
     while(a<=10)
    C.int a=1;
    D.for(int a=1;a<=10;a++)a++;
    while(a<=10)
    {a++}
    【參考答案】 B
    26.下列程序的輸出結果為( )
    #include
    void main()
    {char *a[]={″hello″,″the″,″world″};
    char **pa=a;
    pa++;
    cout<<*pa<
    A.hello
    B.the C.world
    D.hellotheworld
    【參考答案】 B
    27.下列程序的輸出結果是( )
    #include
    int min(int a,int b)
    {if(a
    else return b;
    return 0;}
    void main()
    {cout<
    A.0
    B.1
    C.2
    D.3
    【參考答案】 B
    28.對類成員訪問權限的控制,是通過設置成員的訪問控制屬性實現(xiàn)的,下列不是訪問控制屬性的是( )
    A.公有類型
    B.私有類型
    C.保護類型
    D.友元類型
    【參考答案】 D
    29.類的析構函數(shù)的作用是( )
    A.一般成員函數(shù)的初始化
    B.類的初始化
    C.對象的初始化
    D.刪除類創(chuàng)建的對象
    【參考答案】 D
    30.下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是( )
    A.靜態(tài)數(shù)據(jù)成員可以在類體內進行初始化
    B.靜態(tài)數(shù)據(jù)成員不可以被類的對象調用
    C.靜態(tài)數(shù)據(jù)成員不能受private控制符的作用
    D.靜態(tài)數(shù)據(jù)成員可以直接用類名調用
    【參考答案】 D
    31.在公有派生情況下,有關派生類對象和基類對象的關系,下列敘述不正確的是( )
    A.派生類的對象可以賦給基類的對象
    B.派生類的對象可以初始化基類的引用
    C.派生類的對象可以直接訪問基類中的成員
    D.派生類的對象的地址可以賦給指向基類的指針
    【參考答案】 C
    32.下列關于虛基類的描述,錯誤的是( )
    A.設置虛基類的目的是為了消除二義性
    B.虛基類的構造函數(shù)在非虛基類之后調用
    C.若同一層中包含多個虛基類,這些基類的構造函數(shù)按它們說明的次序調用
    D.若虛基類由非虛基類派生而來,則仍然先調用基類構造函數(shù),再調用派生類的構造函數(shù)
    【參考答案】 B
    33.下列運算符中,在C++語言中不能重載的是( )
    A.*
    B.>=
    C.::
    D./
    【參考答案】 C
    34.下列程序的運行結果是( )
    #include
    class A
    { int a;
    public:
    A() {a=0;}
    A(int aa)
    {a=aa;
    cout<
    void main()
    {A x,y(2),z(3);
    cout<
    A.00
    B.23
    C.34
    D.25
    【參考答案】 B
    35.判斷char型變量c是否為小寫字母的正確表達式是( )
    A.′a′<=c<=′z′
    B.(c>+A)&&(c<=z)
    C.(′a′>=c)||(′z′<=c)
    D.(c>=′a′)&&(c<=′z′)
    【參考答案】 D
    二、填空題
    1.長度為 n 的順序存儲線性表中,當在任何位置上插入一個元素概率都相等時,插入一個元素所需移動元素的平均個數(shù)為【1】。
    【參考答案】
    【1】n/2
    2.類是一個支持集成的抽象數(shù)據(jù)類型,而對象的類的【2】。
    【參考答案】
    【2】實例
    3.當數(shù)據(jù)的物理結構(存儲結構、存取方式等)改變時,不影響數(shù)據(jù)庫的邏輯結構,從而不致引起應用程序的變化,這是指數(shù)據(jù)的【3】。
    【參考答案】
    【3】物理獨立性
    4.若串 s =″MathTypes″,則其子串的數(shù)目是【4】。
    【參考答案】
    【4】46
    5.關系數(shù)據(jù)庫的關系演算語言是以【5】為基礎的DML語言。
    【參考答案】
    【5】謂詞演算
    6.程序
    #include″inostream.h″
    void main()
    {int i=10;
    int j=5;
    cout<
    的結果為【6】。
    【參考答案】
    【6】15
    7.語句int *i;i=new int[10];,釋放指針i的語句是【7】。
    【參考答案】
    【7】delete[]I
    8.在C++語言中每個類都有一個【8】指針,該指針指向正在調用成員函數(shù)的對象。
    【參考答案】
    【8】this
    9.程序的結果為【9】。
    #include ″iostream.h″
    template
    T total(T *data)
    { T s=0;
    while( *data)
    {s+=*data++;}
    return s; }
    int main()
    { int x[]={2,4,6,8,0,12,14,16,18};
    cout<
    return 0;
    cout<
    【參考答案】
    【9】20
    10.一個C++語言程序的開發(fā)步驟通常包括編輯、【10】、鏈接、運行和調試。
    【參考答案】
    【10】編譯
    11.下面程序的運行結果是【11】和【12】。
    #include
    #define N 10
    #define s(x)x*x
    #define f(x)(x*x)
    void main()
    { int i1,i2;
    i1=1000/s(N);i2=1000/f(N);
    cout<
    【參考答案】
    【11】1000 【12】10
    12.【13】是實現(xiàn)C++語言編譯時多態(tài)性的機制,【14】是實現(xiàn)C++語言運行時多態(tài)性的要制。
    【參考答案】
    【13】靜態(tài)聯(lián)編或靜態(tài)綁定 【14】動態(tài)聯(lián)編或動態(tài)綁定
    13.以下程序的輸出結果是【15】。
    #include
    void main()
    { int a=0;
    a+=(a=8);
    cout<
    【參考答案】
    【15】16