當前位置:才華齋>計算機>計算機二級>

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

計算機二級 閱讀(2.55W)

  一、選擇題(每小題2分,共70分)

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

下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的。請將正確選項填塗在答題卡相應位置上,答在試卷上不得分。

(1)下列敘述中正確的是

A)對長度為n的有序連結串列進行查詢,最壞情況下需要的比較次數為n

B)對長度為n的有序連結串列進行對分查詢,最壞情況下需要的比較次數為(n/2)

C)對長度為n的有序連結串列進行對分查詢,最壞情況下需要的比較次數為(log2n)

D)對長度為n的有序連結串列進行對分查詢,最壞情況下需要的比較次數為(n log2n)

(2)演算法的時間複雜度是指

A)演算法的執行時間

B)演算法所處理的資料量

C)演算法程式中的語句或指令條數

D)演算法在執行過程中所需要的基本運算次數

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

A)編輯軟體

B)作業系統

C)教務管理系統

D)瀏覽器

(4)軟體(程式)除錯的任務是

A)診斷和改正程式中的錯誤

B)儘可能多地發現程式中的錯誤

C)發現並改正程式中的所有錯誤

D)確定程式中錯誤的性質

(5)資料流程圖(DFD圖)是

A)軟體概要設計的工具

B)軟體詳細設計的工具

C)結構化方法的'需求分析工具

D)面向物件方法的需求分析工具

(6)軟體生命週期可分為定義階段,開發階段和維護階段。詳細設計屬於

A)定義階段

B)開發階段

C)維護階段

D)上述三個階段

(7)資料庫管理系統中負責資料模式定義的語言是

A)資料定義語言

B)資料管理語言

C)資料操縱語言

D)資料控制語言

(8)在學生管理的關係資料庫中,存取一個學生資訊的資料單位是

A)檔案

B)資料庫

C)欄位

D)記錄

(9)資料庫設計中,用E-R圖來描述資訊結構但不涉及資訊在計算機中的表示,它屬於資料庫設計的

A)需求分析階段

B)邏輯設計階段

C)概念設計階段

D)物理設計階段

(10)有兩個關係R和T如下:

則由關係R得到關係T的操作是

A)選擇

B)投影

C)交

D)並

(11)下列關於函式的描述中,錯誤的是

A)函式可以沒有返回值

B)函式可以沒有引數

C)函式可以是一個類的成員

D)函式不能被定義為模板

(12)若MyClass是一個類名,且有如下語句序列

MyClass c1,*c2;

MyClass *c3=new MyClass;

MyClass &c4=c1;

上面的語句序列所定義的類物件的個數是

A)1

B)2

C)3

D)4

(13)下列關於繼承方式的描述中,錯誤的是

A)如果不顯式地指定繼承方式,預設的繼承方式是私有(private)

B)採用公有繼承方式時,基類中的公有成員在派生類中仍然是公有成員

C)採用保護繼承方式時,基類中的保護成員在派生類中仍然是保護成員

D)採用私有繼承方式時,基類中的私有成員在派生類中仍然是私有成員

(14)將字首運算子“--”過載為非成員函式,下列原型中,能正確用於類中說明的是

A)Decr& operator --(int);

B)Decr operator --( Decr&,int);

C)friend Decr& operator --(Decr&);

D)frlend Decr operator --(Decr&,int);

(15)若MyTemp是一個只有一個虛擬型別引數的類模板,且有如下語句序列

MyTempp2;

MyTempp3[2];

編譯系統在處理上面的語句序列時,所生成的模板MyTemp的例項的個數是

A)1

B)2

C)3

D)0

(16)在C++中,cin是個

A)類

B)物件

C)模板

D)函式

(17)在下列字元中,不允許作為C++識別符號的是

A)b

B)B

C)_

D)2

(18)下列敘述中,錯誤的是

A)false是一個邏輯型常量

B)"b"是一個字元型常量

C)365是一個int常量

D)3.1415926是一個double常量

(19)若x和y是程式中的兩個整型變數,則下列if語句中正確的是

A)if(x==0) y=1; else y=2;

B)if(x==0) then y=1 else y=2;

C)if(x==0) y=1 else y=2;

D)if x==0 y=1; else y=2;

(20)要定義整型陣列x,使之包括初值為O的三個元素,下列語句中錯誤的是

A)int x[3]={0,0,0};

B)int x[]={0};

C)static int x[3]={0};

D)int x[]={0,0,0};

(21)關於函式中的<返回型別>,下列表述中錯誤的是

A)<返回型別>中有可能包含關鍵字int

B)<返回型別>中有可能包含自定義識別符號

C)<返回型別>中有可能包含字元*

D)<返回型別>中可能包含[]

(22)要定義一個引用變數p,使之引用類MyClass的一個物件,正確的定義語句是

A)MyClass p=MyClass;

B)MyClass p=new MyClass;

C)MyClass &p=new MyClass;

D) MyClass a,&p=a;

(23)有如下兩個類定義

class XX{

private:

double x1;

protected:

double x2;

public:

double x3;

};

class YY:protected XX{

private:

double y1;

protected:

double y2;

public:

double y3;

};

在類YY中保護成員變數的個數是

A)1

B)2

C)3

D)4

(24)下列關於運算子過載的描述中,錯誤的是

A)可以通過運算子過載在C++中建立新的運算子

B)賦值運算子只能過載為成員函式

C)運算子函式過載為類的成員函式時,第一運算元是該類物件

D)過載型別轉換運算子時不需要宣告返回型別

(25)下列關於類模板的描述中,錯誤的是

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

B)可以為類模板引數設定預設值

C)類模板描述了一組類

D)類模板中只允許有一個型別引數

(26)下列控制格式輸入輸出的操作符中,能夠設定浮點數精度的是

A)setprecision

B)setw

C)setfill

D)showpoint

(27)下列程式段中包含4個函式,其中具有隱含this指標的是

int fun1();

class Test{

public:

int fun2();

friend int fun3();

static int fun4();

};

A)fun1

B)fun2

C)fun3

D)fun4

(28)有如下程式

#include

using namespace std;

class Test{

public:

Test(){ }

Test(const Test &t) {cout<<1;}

};

Test fun(Test &u) {Test t=u; return t;}

int main(){Test x,y; x=fun(y); return 0;}

執行這個程式的輸出結果是

A)無輸出

B)1

C)11

D)111

(29)有如下程式

#include

using namespace std;

class A{

public:

A(int i=0):r1(i) { }

void print() {cout<<'E’<

void print() const {cout<<'C'<

void print(int x) {cout <<'P'<

private:

int r1;

};

int main() {

A a1;

const A a2(4);

t(2);

t();

return 0;

}

執行時的輸出結果是

A)P8-E4

B)P8-C16-

C)P0-E4-

D)P0-C16-

(30)下列程式碼聲明瞭3個類

class Person{};

class Student:public Person{};

class Undergraduate:Student{};

下列關於這些類之間關係的描述中,錯誤的是

A)類Person是類Undergraduate的基類

B)類Undergraduate從類Student公有繼承

C)類Student是類Person的派生類

D)類Undergraduate是類Person的派生類