<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 等級考試

    9月計算機等級考試二級C++

    時間:2024-12-23 17:41:29 等級考試 我要投稿
    • 相關推薦

    2008年9月計算機等級考試二級C++

    一、選擇題(每小題2分,共70分)
    (1)一個棧的初始狀態為空。現將元素 1、2、3、4、5、A、B、C、D、E 依次入棧,然后再依次出棧,則元素出棧的順序是(B)。
    A)123456ABCDE              B)EDCBA54321
    C)ABCDE12345                D)54321EDCBA
    (2)下列敘述中正確的是(D)。
    A)循環隊列有隊頭和隊尾兩個指針,因此,循環隊列是非線性結構
    B)在循環隊列中,只需要隊頭指針就能反映隊列中元素的動態變化情況
    C)在循環隊列中,只需要隊尾指針就能反映隊列中元素的動態變化情況
    D)循環隊列中元素的個數是由隊頭指針和隊尾指針共同決定
    (3)在長度為 n 的有序線性表中進行二分查找,最壞情況下需要比較的次數是(C)。
    A)O(n)                                    B)O(n2)
    C)O(log2n)                D)O(nlog2n)
    (4)下列敘述中正確的是(A)。
    A)順序存儲結構的存儲一定是連續的,鏈式存儲結構的存儲空間不一定是連續的
    B)順序存儲結構只針對線性結構,鏈式存儲結構只針對非線性結構
    C)順序存儲結構能存儲有序表,鏈式存儲結構不能存儲有序表
    D)鏈式存儲結構比順序存儲結構節省存儲空間
    (5)數據流圖中帶有箭頭的線段表示的是(D)。
    A)控制流                          C)模塊調用
    B)事件驅動                      D)數據流
    (6)在軟件開發中,需求分析階段可以使用的工具是(B)。
    A)N-S 圖                         B)DFD 圖(數據流圖)
    C)PAD 圖                        D)程序流程圖
    (7)在面向對象方法中,不屬于“對象”基本特點的是(A)。
    A)一致性                          B)分類性
    C)多態性                          D)標識唯一性
    (8)一間宿舍可住多個學生,則實體宿舍和學生之間的聯系是(B)。
    A)一對一                          B)一對多
    C)多對一                          D)多對多
    (9)在數據管理技術發展的三個階段中,數據共享最好的是(C)。
    A)人工管理階段        B) 文件系統階段
    C)數據庫系統階段     D) 二個階段相同
    (10)有三個關系 R、S 和 T 如下:
    R                 S                   T
     

    2008年9月計算機等級考試二級C++

     

    A B   B C   A B C
    m 1 1 3 m 1 3
    n 2 3 5  

     


     
    由關系 R 和 S 通過運算得到關系 T,則所使用的運算為(D)。
    A)笛卡爾積                      B)交
    C)并                                        D)自然連接
    (11)在下列原型所示的 C++函數中,按“傳值”方式傳遞參數的是(A)。
    A)void f1(int x);                      B)void f2(int*x);
    C)void f3(const int*x); D)void f4(int&x);
    (12)在 C++中,編譯系統自動為一個類生成缺省構造函數的條件是(C)。
    A)該類沒有定義任何有參構造函數
    B)該類沒有定義任何無參構造函數
    C)該類沒有定義任何構造函數
    D)該類沒有定義任何成員函數
    (13)在一個派生類的成員函數中,試圖調用其基類的成員函數“void f();”,但無法通過編譯。這說明(A)。
    A)f()是基類的私有成員
    C)派生類的繼承方式為私有
    B)f()是基類的保護成員
    D)派生類的繼承方式為保護
    (14)下列關于運算符重載的敘述中,錯誤的是(B)。
    A)有的運算符可以作為非成員函數重載
    B)所有的運算符都可以通過重載而被賦予新的含義
    C)不得為重載的運算符函數的參數設置默認值
    D)有的運算符只能作為成員函數重載
    (15)下列關于模板的敘述中,錯誤的是(C)。
    A)調用模版函數時,在一定條件下可以省略模板實參
    B)可以用 int、double 這樣的類型修飾符來聲明模版參數
    C)模板聲明中的關鍵字 class 都可以用關鍵字 typename 替代
    D)模板的形參表中可以有多個參數
    (16)要利用 C++流進行文件操作,必須在程序中包含的頭文件是(B)。
    A)iostream                        B)fstream
    C)strstream                        D)iomanip
    (17)下列字符串中不能作為 C++標識符使用的是(D)。
    A)WHILE   B)user   C)_lvar   D)9stars
    (18)下列語句中錯誤的是(A)。
    A)const int a;
    B)const int a=10;
    C)const int*point=0;
    D)const int*point=new int(10);
    (19)有如下程序:
    #include<iostream> 
    using namespace std;
    int main(){
    int sum;
    for(int i=0; i<6; i+=3){
    sum=i;
    for(int j = i; j<6; j++)sum+=j;
    }
    cout<<sum<<end1;
    return 0;
    }
    運行時的輸出結果是(D)。
    A)3              B)10          C)12           D)15
    (20)下列語句中,正確的是(A)。
    A)char*myString="Hello-World!";
    B)char myString="Hello-World!";
    C)char myString[11]="Hello-World!";
    D)char myString[12]="Hello-World!";
    (21)若已經聲明了函數原型“void fun(int a, double b=0.0);”,則下列重載函數聲明中正確的是(C)。
    A)void fun(int a=90, double b=0.0);
    B)int fun(int a, double B);
    C)void fun(double a, int B);
    D)bool fun(int a, double b = 0.0);
    (22)有如下程序:
    #include<iostream> 
    using namespace std;
    class Sample{
    public:
    Sample(){}
    ~Sample(){cout<<'*';}

    };
    int main(){
    Sample temp[2], *pTemp[2];
    return 0;
    }
    執行這個程序輸出星號(*)的個數為(B)。
    A)1             B)2                     C)3                     D)4
    (23)下列選項中,與實現運行時多態性無關的是(A)。
    A)重載函數                      B)虛函數
    C)指針                                    D)引用
    (24)下列運算符函數中,肯定不屬于類 Value 的成員函數的是(B)。
    A)Value operator+(Value);
    B)Value operator-(Value, Value);
    C)Value operator*(int);
    D)Value operator/(Value);
    (25)下列模板聲明中,有語法錯誤的是(D)。
    A)template<typename T>T fun(T x){return x;}
    B)template<typename T>T fun(T x, int n){return x*n;}
    C)template<class T>T fun(T *p){return *p;}
    D)template<class T>T classA{T n;};
    (26)在語句“cout<<'A';”中,cout 是(B)。
    A)類名                             B)對象名
    C)函數名                          D)C++的關鍵字
    相關文檔推薦:
    2011年3月全國計算機二級C++考試真題與答案
    計算機全部等級考試
    2011年9月計算機等級考試二級C++
    2009年9月二級C++筆試
    2010年3月計算機等級考試二級C++筆試
    2010年9月全國計算機二級C++筆試
    2008年9月二級C++筆試
    2012年3月全國計算機等級考試二級C++
    (27)有如下程序:
    #include<iostream> 

    using namespace std;
    class MyClass{
    public: 
    MyClass(int i=0){cout<<1;}
    MyClass(const MyClass&x){cout<<2;}
    MyClass& operator=(const MyClass&x)
    {cout<<3; return*this;}
    ~MyClass(){cout<<4;}
    };
    int main(){
    MyClass obj1(1),obj2(2),obj3(obj1);
    return 0:

    }
    運行時的輸出結果是(A)。
    A)112444                  B)11114444
    C)121444                          D)11314444
    (28)有如下程序:
    #include<iostream>
    using namespace std;
    class MyClass{
    public:
    MyClass(int x):val(x){}
    void Set(int x){val=x;}
    void Print()const{cout<<"val="<<val<<'\t';}
    private:
    int val;
    };
    int main(){
    const MyClass obj1(10);
    MyClass obj2(20);
    obj1.Print(); //語句 1
    obj2.Print(); //語句 2
    obj1.Set(20); //語句 3
    obj2.Set(30); //語句 4
    return 0;
    }
    其主函數中錯誤的語句是(C)。 
    A)語句 1                          B)語句 2
    C)語句 3                          D)語句 4
    (29)在類聲明中,緊跟在“public:”后聲明的成員的訪問權限是(B)。
    A)私有        B)公有        C)保護        D)默認
    (30)對于通過公有繼承定義的派生類,若其成員函數可以直接訪問基類的某個成員,說明該基類成員的訪問權限是(D)。
    A)公有或私有                          B)私有
    C)保護或私有                          D)公有或保護
    (31)定義派生類時,若不使用關鍵字顯式地規定采用何種繼承方式,則默認方式為(A)。
    A)私有繼承                            B)非私有繼承
    C)保護繼承                             D)公有繼承
    (32)建立一個有成員對象的派生類對象時,各構造函數體的執行次序為(C)。
    A)派生類、成員對象類、基類
    B)成員對象類、基類、派生類
    C)基類、成員對象類、派生類
    D)基類、派生類、成員對象類
    (33)如果表達式 a>=b 中的“>=”是作為非成員函數重載的運算符,則可以等效地表示為(C)。
    A)a.operator>=(b)      B)b.operatotr>=(a)
    C)operator>=(a,b)       D)operator>=(b,a)
    (34)當使用 ofstream 流類定義一個流對象并打開一個磁盤文件時,文件的默認打開方式為(D)。
    A)ios base::in
    B)ios_base::binary
    C)ios_base::in|ios_base::out
    D)ios_base::out
    (35)在一個抽象類中,一定包含有(B)。
    A)虛函數                          B)純虛函數
    C)模板函數                      D)重載函數
    二、填空題(每空2分,共30分)
     

     

    A

     

     

    B

     

     

    C

     

     

    D

     

     

    E

     

     

    F

     

     

    X

     

     

    Y

     

     

    Z

     

    (1)對下列二叉樹進行中序遍歷的結果_DBXEAYFZC_。
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    (2)按照軟件測試的一般步驟,集成測試應在__單元__測試之后進行。
    (3)軟件工程三要素包括方法、工具和過程,其中,__過程__支持軟件開發的各個環節的控制和管理。
    (4)數據庫設計包括概念設計、_邏輯設計_和物理設計。
    (5)在二維表中,元組的__分量__不能再分成更小的數據項。
    (6)當使用關鍵字__void__作為函數返回類型時,該函數不返回任何值。
    (7)已知數組 a 中有 n 個元素,下列語句將數組 a 中從下標 x1 開始的 k 個元素移動到從下標 x2 開始的 k 個元素中,其中 0<=x1<x2<n,x2+k<n,請將下列語句補充完整。
    for (int i = x1+k-1; i>=x1; i--)
    a[_x2+k-1_]=a[i];
    (8)有如下程序:
    #include<iostream> 
    using namespace std;
    int fun1(int x) {return++x;}
    int fun2(int &x) {return++x;}
    int main(){
    int x=1,y=2;
    y=fun 1(fun2(x));
    cout<<x<<','<<y;
    return 0:
    }
    程序的輸出結果是_2,3_。

    相關文檔推薦:
    2011年3月全國計算機二級C++考試真題與答案
    計算機全部等級考試
    2011年9月計算機等級考試二級C++
    2009年9月二級C++筆試
    2010年3月計算機等級考試二級C++筆試
    2010年9月全國計算機二級C++筆試
    2008年9月二級C++筆試
    2012年3月全國計算機等級考試二級C++

    (9)有如下程序:
    #include<iostream> 
    using namespace std;
    class pumpkin{
    public:
    pumpkin(){++count;}
    ~pumpkin(){--count;}
    static void total_count(){
    cout<<count<<"pumpkin(s)"<<endl;
    }
    private:
    static int count;
    };
    int pumpkin::count=0;
    int main(){
    pumpkin pl[10];
    pumpkin::total_count();
    return 0;
    }
    這個程序的輸出結果是__10pumpkin(s)__。
    (10)有如下遞歸函數:
    int Fun(int n){
    if(n<=1) return 1;
    __else return n*Fun(n-1);__
    }
    請補充完整,使得函數 Fun 能夠正確計算形參 n 的階乘。
    (11)請在下列程序中的空格處填寫正確的語句:
    class Sample{
    public:
    Sample(){}
    ~Sample(){}
    void SetData(int data)
    { //將 Sample 類成員變量 data 設置成形參的值
    __Sample::data=data__ //注意形參與成員同名
    }
    private: int data;
    };
    (12)有如下類定義,請將Sample類的拷貝構造函數補充完整。
    class Sample{ 
    public:
    Sample(){)
    ~Sample() {if(p) delete p;)
    Sample (const Sample& s){
    __p=new int;*p=s.*p__
    }
    void SetData(int data) {p=new int(data);}
    private:
    int*p;
    };
    (13)重載加法運算符“+”,其函數名是__operator +_。
    (14)有如下程序:
    #include<iostream> 
    using namespace std;
    class Wages{ //“工資”類
    double base; //基本工資
    double bonus; //獎金
    double tax; //稅金
    public:
           Wages(double CBase, double CBonus,
    double CTax)
    :base(CBase), bonus(CBonus),
    tax(CTax){}
    double getPay()const; //返回應付工資額
    Wages operator+(Wages w)const; //重載加法
    };
    double Wages::getPay()const
    {return base+bonus-tax;}
    Wages Wages::operator+(Wages w)const
    { return Wages(base+w.base, bonus+w.bonus,
    tax+w.tax);
    }
    int main(){
    Wages wl(2000,500,100),w2(5000,1000,300);
    cout<<(wl+w2).getPay()<<end1;
    retun 0;
    }
    程序的輸出結果是__8100__
    (15)有如下程序:
    #include<iostream>
    using namespace std; 
    class Pet{
    char name[10];
    public:
    Pet(char*name){strcpy(this->name, name);}
    const char*getName()const {return name;}
    virtual void call()const=0;
    };
    class Dog: public Pet{
    public:
    Dog(char*name):Pet(name){}
    void call()const{cout<<"汪汪叫";}
    };
    class Cat:public Pet{
    public:
    Cat(char*name):Pet(name){}
    void call()const{cout<<"喵喵叫";}
    };
    int main(){ 
    Pet  *pet1=new Dog("哈克"),
    *pet2=new Cat("吉米");
    cout<<pet1->getName();
    pet1->call();
    cout<<end1;
    cout<<pet2->getName();
    pet2->call();
    cout<<end1;
    return 0;
    }
    程序的輸出結果是__哈克汪汪叫__
    __吉米喵喵叫__
     
     
    2008年9月二級 C++筆試試卷參考答案
    一、選擇題
    (1)B)(2)D)(3)C)(4)A)(5)D)(6)B)(7)A)(8)B)(9)C)(10)D(11)A) (12)A)(13)C)(14)B)(15)D(16)B) (17)B)(18)D)(19)A)(20)D(21)C) (22)C)(23)A)(24)D)(25)C)(26)B) (27)C)(28)B)(29)A)(30)D(31)A) (32)C)(33)A)(34)B)(35)C)
    二、填空題
    (1)DBXEAYFZC
    (2)單元
    (3)過程
    (4)邏輯設計
    (5)分量
    (6)void
    (7)X2+k-1
    (8)2,3
    (9)10pumpkin(s)
    (10)else return n*Fun(n-1);
    (11)Sample::data
    (12)p=new int; *p=s.*p;
    (13)operator +
    (14)8100
    相關文檔推薦:
    2011年3月全國計算機二級C++考試真題與答案
    計算機全部等級考試
    2011年9月計算機等級考試二級C++
    2009年9月二級C++筆試
    2010年3月計算機等級考試二級C++筆試
    2010年9月全國計算機二級C++筆試
    2008年9月二級C++筆試
    2012年3月全國計算機等級考試二級C++

    【9月計算機等級考試二級C++】相關文章:

    2010年3月計算機等級考試二級C++筆試09-05

    9月計算機等級考試二級Java試題10-29

    計算機等級考試《二級C++》單選題08-16

    2017年9月計算機二級C++考試模擬練習11-05

    2012年9月計算機二級考試C++真題11-12

    2017年9月計算機二級C++考試強化復習試題10-08

    2010年9月計算機二級考試C++筆試真題09-28

    2015年9月計算機考試二級C++模擬試題10-02

    計算機等級考試二級C++考前指導訓練08-29

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人