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

2017年9月全國計算機二級考試C++筆試模擬題及答案

計算機二級 閲讀(2.43W)

  一、選擇題

2017年9月全國計算機二級考試C++筆試模擬題及答案

1.棧和隊列的共同特點是(  )

A.都是先進先出

B.都是先進後出

C.只允許在端點處插入和刪除元素

D.沒有共同點

【答案】C

2.鏈表不具有的特點是(  )

A.不必事先估計存儲空間

B.可隨機訪問任一元素

C.插入刪除不需要移動元素

D.所需空間與線性表長度成正比

【答案】B

3.為了提高測試的效率,應該(  )

A.隨機選取測試數據

B.取一切可能的輸入數據作為測試數據

C.在完成編碼以後制定軟件的測試計劃

D.集中對付那些錯誤羣集的程序

【答案】D

4.軟件生命週期中所花費用最多的階段是(  )

A.詳細設計

B.軟件編碼

C.軟件測試

D.軟件維護

【答案】D

5.下列有關數據庫的描述,正確的是(  )

A.數據庫是一個DBF文件

B.數據庫是一個關係

C.數據庫是一個結構化的數據集合

D.數據庫是一組文件

【答案】C

6.算法的空間複雜度是指(  )

A.算法程序的長度 

B.算法程序中的指令條數

C.算法程序所佔的存儲空間

D.執行過程中所需要的存儲空間

【答案】D

7.數據結構中,與所使用的計算機無關的是數據的(  )

A.存儲結構

B.物理結構

C.邏輯結構

D.物理和存儲結構

【答案】C

8.軟件設計包括軟件的結構、數據接口和過程設計,其中軟件的過程設計是指(  )

A.模塊間的關係

B.系統結構部件轉換成軟件的過程描述

C.軟件層次結構

D.軟件開發過程

【答案】B

9.數據流圖用於抽象描述一個軟件的邏輯模型,數據流圖由一些特定的圖符構成。下列圖符名標識的圖符不屬於數據流圖合法圖符的是(  )

A.控制流

B.加工

C.數據存儲

D.源和潭

【答案】A

10.在數據庫設計中,將E-R圖轉換成關係數據模型的過程屬於(  )

A.需求分析階段

B.邏輯設計階段

C.概念設計階段

D.物理設計階段

【答案】B

11.以下C++語言中用於單行註釋的是(  )

A.//

B./*

C.*/

D.|

【答案】A

12.若變量已正確定義並賦值,以下符合C++語言語法的表達式是(  )

A.a:=b+1

B.a=b=c+2

18.5%3

D.a=a+7=c+b

【答案】B

13.有以下程序

#include″iostream.h″

voidmain(  )

{inti=1,j=1,k=2;

if((j++||k++)&&i++)

cout<

cout<

執行後輸出結果是(  )

A.1,1,2

B.2,2,1

C.2,2,2 

D.2,2,3

【答案】C

14.若有語句int*point,a=4;和point=&a;下面均代表地址的一組選項是(  )

A.a,point,*&a

B.&*a,&a,*point

C.*&point,*point,&a

D.&a,&*point,point

【答案】D

15.若運行時給變量x輸入12,則以下程序的運行結果是(  )

#include

voidmain(  )

{

intx,y;

cin>>x;

y=x>12?x+10:x-12;

cout<

cout<

}

A.0

B.22

C.12

D.10

【答案】A

16.以下關於C++類的説法中正確的是(  )

A.C++語言的默認訪問權限是private

B.C++語言中的類定義,用户一定要自己定義一個構造函數用於實例化類

C.C++語言中的成員函數的實現部分一定要寫在類定義外

D.C++語言中的類不能夠嵌套定義

【答案】A

17.派生類對象對其基類中的什麼成員是可訪問的?(  )

A.公有繼承的私有成員

B.私有繼承的公有成員

C.私有繼承的保護成員

D.保護繼承的保護成員

【答案】D

18.下列關於運算符重載不正確的是(  )

A.運算符重載不能改變運算符的操作數個數

B.運算符重載不能改變運算符的優先級

C.運算符重載不能改變運算符的結合性

D.運算符重載能改變對預定義類型數據的操作方式

【答案】D

19.對於重載的運算符>>,它是一個(  )

A.用於輸入的友元函數

B.用於輸入的成員函數

C.用於輸出的友元函數

D.用於輸出的成員函數

【答案】A

20.若調用一個函數,且此函數中沒有return語句,則正確的説法是該函數(  )

A.沒有返回值

B.返回若干個系統默認值

C.有返回值,但返回一個不確定的值

D.能返回一個用户所希望的函數值

【答案】C

21.以下能對二維數組a進行正確初始化的.語句是(  )

[2][]={{1,0,1},{5,2,3}};

[][3]={{1,2,3},{4,5,6}};

[2][4]={{1,2,3},{4,5},{6}};

[][3]={{1,0,1},{},{1,1}};

【答案】B

22.有如下程序

#include

voidmain(  )

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

cout<

該程序的輸出結果是(  )

A.0

B.0.25

C.0.5

D.1.0

【答案】C

23.C++中,表示一條語句結束的標號是(  )

A.#

B.;

C.//

D.}

【答案】B

24.已知有定義

constintD=5;

inti=1;

doublef=0.32;

charc=15;

則下列選項錯誤的是(  )

A.++i;

B.D--;

C.c++;

D.--f;

【答案】B

25.下面程序的功能是把316表示為兩個加數的和,使兩個加數分別能被13和11整除,在劃線處應填入的選項是(  )

#include

voidmain(  )

{inti=0,j,k;

do{i++;k=316-13*i;}while(___);

j=k/11;

cout<<″316=13*″<

A.k/11B.kC.k/11==0D.k=0

【答案】B

26.若已定義:

inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;

其中o≤i≤9,則對a數組不正確的引用是(  )

A.a[p-a]

B.*(&a[i])

C.p[i]

D.a[10]

【答案】D

27.函數fun的返回值是(  )

fun(char*a,char*b)

{intnum=0,n=0;

while(*(a+num)!=′