2013年3月全國計算機二級VFP真題

 一、單項選擇題

2013年3月全國計算機二級VFP真題

1.軟件生命週期中的活動不包括( )。

A.市場調研

B.需求分析

C.軟件測試

D.軟件維護

2.下列敘述中正確的是( )。 A.一個邏輯數據結構只能有一種存儲結構 B.邏輯結構屬於線性結構,存儲結構屬於非線性結構 C.一個邏輯數據結構可以有多種存儲結構,且各種存儲結構不影響數據處理的效率 D.一個邏輯數據結構可以有多種存儲結構,且各種存儲結構影響數據處理的效率 3.下列敘述中正確的是( )。 A.一個算法的空間複雜度大,則其時間複雜度必定大 B.一個算法的空間複雜度大,則其時間複雜度必定小 C.一個算法的時間複雜度大,則其空間複雜度必定小

3、下列關於線性鏈表的敘述中,正確的是( )。

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

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

C.進行插入與刪除時,不需要移動表中的元素

D.以上說法均不正確

4、對於一個類定義,下列敘述中錯誤的是( )。

A.如果沒有定義拷貝構造函數,編譯器將生成一個拷貝構造函數

B.如果沒有定義缺省的'構造函數,編譯器一定將生成一個缺省的構造函數

C.如果沒有定義構造函數,編譯器將生成一個缺省的構造函數和一個拷貝構造函數

D.如果已經定義了構造函數和拷貝構造函數,編譯器不會生成任何構造函數

9,在對象方法中,一個對象請求另一個對象爲其服務的方式是通過發送( )來實現。 A.調用語句 B.命令 C.中令 D.消息

4.下列敘述中錯誤的是( )。

A.一種數據的邏輯結構可以有多種存儲結構

B.數據的存儲結構與數據的處理效率無關

C.數據的存儲結構與數據的處理效率密切相關

D.數據的存儲結構在計算機中所佔的空間不一定是連續的

5.下列敘述中正確的是( )。

A.在模塊化程序設計中,一個模塊應該儘量多地包括與其他模塊聯繫的信息

B.在自頂向下、逐步細化的設計過程中,首先應設計解決問題的第一個細節

C.在模塊化程序設計中,一個模塊內部的控制結構也要符合結構化原則

D.在程序設計過程中,不能同時採用結構化程序設計方法與模塊化程序設計方法

  二、基本操作題(18分)

41、請使用VC6或使用【答題】菜單打開考生文件夾projl下的工程projl,此工程中含有一個源程礙文件 。其中位於每個註釋“//ERROR ****found****”之後的一行語句存在錯誤。請改正這些錯誤,使程序的輸出結果爲:

ConstruCtor Called. The value is 10

Copy ConstruCtor Called. The value is 10

DestruCtor Called. DestruCtor Called. 注意:只修改註釋“//ERROR ****found****”的下一行語句,不要改動程序中的其他內容。

//

#inClude ’using namespaCe std; Class MyClass{

publiC:

//ERROR**********found**********

MyClass(int i)

{value=i;Cout<<”ConstruCtor Called.” < //ERROR**********found********** MyClass(eonst MyClass P)

{

value = e;

eout<<”Copy ConstruCtor Called.”< }

void Print()

{Cout<<”The value is” < //ERROR**********found********* void-MyClass()

{Cout<<”DestruCtor Called.”< private:

int value;

}; int main()

{ MyChas objl

t();

MyClmss obj2(owl); t();

retum 0;

 三、簡單應用題(24分)

42、請使用VC6或使用【答題】菜單打開考生文件夾pr092下的工程pros2。此工程中包含一個程序文件,其中有“部門”類Department和“職工”類Staff的定義,還有主函數main的定義。在主函數中定義了兩個“職工”對象,他們屬於同一部門。程序展示,當該部門改換辦公室後,這兩個人的辦公室也同時得到改變。請在程序中的橫線處填寫適當的代碼並刪除橫線,以實現上述類定義。此程序的正確輸出結果應爲:

改換辦公室前:

職工號:0789姓名:張三部門:人事處辦公室:521

職工號:0513姓名:李四部門:人事處辦公室:521

改換辦公室後:

職工號:0789姓名:張三部門:人事處辦公室:311

職工號:0513姓名:李四部門:人事處辦公室:311

注意:只在橫線處填寫適當的代碼,不要改動程序中的其他內容,也不要刪除或移動“//****found****”。

#include

using namespace std;

class Department{ //“部門”類

public:

Department(const char*name,const char*office){

strcpy(this一>name,nanle);

//**********found**********

}

const char*getName()const{return name;}//返回部門名稱

//**********found**********

const char*getOffice()const{________} //返回辦公室房號

void changeOfficeTo(const char*office){ //改換爲指定房號的另一個辦公室

strcpy(this一>office,office);

}

private:

char name[20];//部門名稱

char office[20];//部門所在辦公室房號