糯米文學吧

位置:首頁 > 英語 > 等級考試

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

考試頻道小編為你收集整理2011年9月計算機等級考試二級筆試C++語言程序設計,請閲讀

一、選擇題

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

(1)下列敍述中正確的是( )。

A) 算法就是程序 B) 設計算法時只需要考慮數據結構的設計  C) 設計算法時只需要考慮結果的可靠性 D) 以上三種説法都不對

(2)下列關於線性鏈表的敍述中?正確的是( )。

A) 各數據結點的存儲空間可以不連續?但它們的存儲順序與邏輯順序必須一致

B) 各數據結點的存儲順序與邏輯順序可以不一致?但它們的存儲空間必須連續

C) 進行插入與刪除時?不需要移動表中的元素  D) 以上三種説法都不對

(3)下列關於二叉樹的敍述中?正確的是( )。

A) 葉子結點總是比度為2的結點少一個  B) 葉子結點總是比度為2的結點多一個

C) 葉子結點數是度為2的結點數的兩倍  D) 度為2的結點數是度為1的結點數的兩倍

(4)軟件按功能可以分為應用軟件、系統軟件和支撐軟件(或工具軟件)。下面屬於應用軟件的是( )。

A) 學生成績管理系統 B) C語言編譯程序  C) UNIX操作系統 D) 數據庫管理系統

(5)某系統總體結構圖如下圖所該系統總體結構圖的深度是( )。

A) 7 B) 6 C) 3 D) 2

(6)程序調試的任務是( )。

A) 設計測試用例 B) 驗證程序的正確性  C) 發現程序中的錯誤 D) 診斷和改正程序中的錯誤

(7)下列關於數據庫設計的敍述中?正確的是( )。

A) 在需求分析階段建立數據字典 B) 在概念設計階段建立數據字典

C) 在邏輯設計階段建立數據字典 D) 在物理設計階段建立數據字典

(8)數據庫系統的三級模式不包括( )。

A) 概念模式 B) 內模式 C) 外模式 D) 數據模式

(9)有三個關係R、S和T如下?

則由關係R和S得到關係T的操作是( )。

A) 自然連接 B) 差 C) 交 D) 並 (10)下列選項中屬於面向對象設計方法主要特徵的是( )。

A) 繼承 B) 自頂向下 C) 模塊化 D) 逐步求精

(11)在對函數進行原型聲明時?下列語法成分中?不需要的是( )。

A) 函數返回類型 B) 函數參數列表 C) 函數名 D) 函數體

(12)下列關於this指針的描述中?正確的是( )。

A) 類的成員函數都有this指針 B) 類的友元函數都有this指針

C) 任何與類相關的函數都有this指針 D) 類的非靜態成員函數都有this指針

(13)有如下類定義?

class AA{

int a;

public:

AA(int n=0):a(n){}

}?

class BB:public AA{

public:

BB(intn)______

};

其中橫線處缺失部分是( )。

A) :a(n){} B) :AA(n){} C) {a(n);} D) {a=n;)

(14)為類Matrix重載下列運算符時?只能作為Matrix類成員函數重載的運算符是( )。

A) + B) = C) ?? D) ++

(15)下列關於模板的描述中?錯誤的是( )。

A) 類模板的成員函數都是模板函數

B) 函數模板是一種參數化類型的函數

C) 滿足一定條件時可以省略模板實參

D) 模板形參只能由關鍵字typename聲明

(16)要利用C++流實現輸入輸出的各種格式控制?必須在程序中包含的頭文件是( )。

(17)A) fstream B) istreara C) ostream D) iomanip

(18) (17)下列選項中?不是C++關鍵字的是( )。

A) class B) function C) friend D) virtual

B) (18)若有定義語句“int i=2, j=3;”?則表達式i/j的結果是( )。

A) 0 B) 0.7 C) 0.66667 D) 0.66666667

(19)下列語句中?與語句“n=(a?b?(b?c?1:0):0);”的功能等價的是( )。

A) if(a?=B) n=0?

B) if((a?B) ||(b?C) )n=1; else n=0?

C) if(a?B) if(b?C) n=h else n=0; else n=0;

D) if(a?B) n=1; else if(b?=C) n=1; else if(b?C) n=1; else n=0;

(20)有如下語句序列?

int x=100, &r=x;

cout??x??'-'??r??end1:

己知其中變量x的地址為0012FF7C?則執行該語句序列的輸出結果為( )。

A) 100-100 B) 100-0012FF7C

C) 0012FF7C-100 D) 0012FF7C-0012FF7C (21)己知函數f的原型是“void f(int*x, int &y);”?變量v1、v2的定義是

“int v1, v2;”?下列調用語句中?正確的是( )。

A) f(v1, v2)? B) f(v1, &v2); C) f(&v1, v2); D) f(&v1, &v2);

(22)有如下類定義?

class Sample {

public;

Sample(int x):ref(x){} //①

private:

Sample():ref(0){) //②

static int va1=5; //③

const int ref; //④

};

上述程序段中?錯誤的語句是( )

A) ① B) ② C) ③ D) ④

(23)有如下類定義?

class B{

public: void fun1(){}

private: void fun2(){}

protected: void fun3(){}

};

class D: public B{

protected: void fun4(){}

};

若obj是類D的對象?則下列語句中不違反訪問控制權限的是( )。

A) obj. fun1(); B) obj. fun2(); C) obj. fun3(); D) obj. fun4();

(24)有如下類定義

class MyClass

public:

Private:

int data;

};

若要為MyClass類重載流輸入運算符???使得程序中可以“cin??obj;”形

式輸入MyClass類的對象obj?則橫線處的聲明語句應為( )。

A) friend istream& operator??(istream& is, MyClass& A) ;

B) friend istream& operator??(istream& is, MyClass A) ;

C) istream& operator??(istream& is, MyClass& A) ;

D) istream& operator??(istream& is, MyClass A) ;

(25)已知主函數中通過如下語句序列實現對函數模板swap的調用?

int a[10], b[10];

swap(a, b, 10);

下列對函數模板swap的聲明中?會導致上述語句序列發生編譯錯誤的是( )。

A) template?typename T?

void swap(T a[], T b[], int size);

B) template?typename T? oid swap(int size, T a[], T b[]);

C) template?typename T1, typename T2?

void swap(T1 a[], T2 b[], int size);

D) template?class T1, class T2?

void swap(T1 a[], T2 b[], int size);

(26)若目前D盤根目錄下並不存在test. txt文件?則下列打開文件方式不會

自動創建文件的是( )。

A) ifstream fin; fin. open("d:", ios_base::in);

B) fstream fio; fio. open("d:test. txt”, ios_base::out);

C) ofstream fout; fout. open("d:test. txt”, ios_base::out);

D) ofstream fout; fout. open("d:

test. txt”, ios_base::app);

(27)已知類Myclass的定義如下

class MyClass{

public:

void function1(MyClass& C) {cout??c. data?)

static void function2(MyClass& C) {cout??c. data;}

void function3(){cout??data;}

staric void function4(){cout??data;}

private:

int data;

};

其中有編譯錯誤的函數是( )。

A) function1 B) function2 C) function3 D) function4

(28)有如下程序?

#include?iostream?

using namespace std;

class MyClass{

public:

MyClass() {cout??'*';)

MyClass(MyClass& A) {cout??'#';)

~MyClass() {cout??'@';)

};

int main();

MyClass a;

Myclass b(A) ;

return 0;

}

運行時的輸出結果是( )。

A) *@#@ B) #@*@ C) *#@@ D) #*@@

(29)已知類Myclass的定義如下?

class MyClass{

public:

MyClass(int D) {data=d;}

~MyClass (){} rivate:

int data;

};

下列對Myclass類對象數組的定義和初始化語句中?正確的是( )。

A) MyClass arrays[2];

B) MyClass arrays[2]={MyClass(5)};

C) MyClass arrays[2]={MyClass(5), MyClass(6)};

D) MyClass*arrays=new MyClass[2];

以上是考試頻道小編為你收集整理2011年9月計算機等級考試二級筆試C++語言程序設計。