- 相關(guān)推薦
2015下半年全國(guó)計(jì)算機(jī)二級(jí)C++考試預(yù)測(cè)卷(附答案)
一、選擇題(每題2分,共70分)。下列各題A、B、C、D四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請(qǐng)將正確選項(xiàng)涂寫(xiě)在答題卡相應(yīng)位置上,答在試卷上不得分。
1.算法的空間復(fù)雜度是指( )。
A.算法程序的長(zhǎng)度
B.算法程序中的指令條數(shù)
C.算法程序所占的存儲(chǔ)空間
D.執(zhí)行過(guò)程中所需要的存儲(chǔ)空間
【答案】D
2.用鏈表表不線性表的優(yōu)點(diǎn)是( )。
A.便于隨機(jī)存取
B.花費(fèi)的存儲(chǔ)空間較順序存儲(chǔ)少
C.便于插入和刪除操作
D.數(shù)據(jù)元素的物理順序與邏輯順序相同
【答案】C
3.下列關(guān)于棧的描述正確的是( )。
A.在棧中只能插入元素而不能刪除元素
B.在棧中只能刪除元素而不能插入元素
C.棧是特殊的線性表,只能在一端插入或刪除元素
D.棧是特殊的線性表,只能在一端插入元素,而在另一端刪除元素
【答案】D
4.下列敘述中正確的是( )。
A.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)
B.數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于非線性結(jié)構(gòu)
C.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效率
D.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率
【答案】D
5.下列對(duì)列的敘述正確的是( )。
A.隊(duì)列屬于非線性表
B.隊(duì)列按”先進(jìn)后出”的原則組織數(shù)據(jù)
C.隊(duì)列在隊(duì)尾刪除數(shù)據(jù)
D.隊(duì)列按“先進(jìn)先出”原則組織數(shù)據(jù)
【答案】D
6.對(duì)下列二叉樹(shù)進(jìn)行前序遍歷的結(jié)果為( )。
A.DYBEAFCZX
B.YDEBFZXCA
C.ABDYECFXZ
D.ABCDEFXYZ
【答案】C
7.在面向?qū)ο蠓椒ㄖ,不屬?ldquo;對(duì)象”基本特點(diǎn)的是( )。
A.一致性
B.分類性
C.多態(tài)性
D.標(biāo)識(shí)唯一性
【答案】A
【解析】對(duì)象是面向?qū)ο蠓椒ㄖ凶罨镜母拍睿幕咎攸c(diǎn)有:標(biāo)識(shí)唯一性、分類性、多態(tài)性、封裝性和模塊獨(dú)立性。故本題答案為A。
8.一間宿舍可住多個(gè)學(xué)生,則實(shí)體宿舍和學(xué)生之間的聯(lián)系是( )。
A.一對(duì)一
B.一對(duì)多
C.多對(duì)一
D.多對(duì)多
【答案】B
【解析】一個(gè)實(shí)體宿舍可以對(duì)應(yīng)多個(gè)學(xué)生,而一個(gè)學(xué)生只能對(duì)應(yīng)一個(gè)宿舍,所以宿舍和學(xué)生之間是一對(duì)多關(guān)系。
9.將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體與聯(lián)系都可以表示成( )。
A.屬性
B.關(guān)系
C.鍵
D.域
【答案】B
10.SQL語(yǔ)言又稱為( )。
A.結(jié)構(gòu)化定義語(yǔ)言
B.結(jié)構(gòu)化控制語(yǔ)言
C.結(jié)構(gòu)化查詢語(yǔ)言
D.結(jié)構(gòu)化操縱語(yǔ)言
【答案】C
11.C++語(yǔ)言對(duì)C語(yǔ)言做了很多改進(jìn),C++語(yǔ)言相對(duì)于C語(yǔ)言的最根本的變化是( )。
A.增加了一些新的運(yùn)算符
B.允許函數(shù)重載,并允許設(shè)置缺省參數(shù)
C.規(guī)定函數(shù)說(shuō)明符必須用原型
D.引進(jìn)了類和對(duì)象的概念
【答案】D
12.設(shè)有定義int a=1;float f=1.2;char c=’a';,則下列表示錯(cuò)誤的是( )。
A.++a;
B.f--;
C.C++;
D.8++;
【答案】D
13.下列程序的運(yùn)行結(jié)果為( )。
#include
void main()
{
int a=2:
int b=a+1;
cout<<
}
A.0.66667 B.0
C.0.7 D.0.66666666…
【答案】B
14.下列關(guān)于運(yùn)算符重載的敘述中,正確的是( )。
A.通過(guò)運(yùn)算符重載,可以定義新的運(yùn)算符
B.有的運(yùn)算符只能作為成員函數(shù)重載
C.若重載運(yùn)算符+,則相應(yīng)的運(yùn)算符函數(shù)名是+
D.重載一個(gè)二元運(yùn)算符時(shí),必須聲明兩個(gè)形參
【答案】B
15.下列關(guān)于模板的敘述中,錯(cuò)誤的是( )。
A.調(diào)用模板函數(shù)時(shí),在一定條件下可以省略模板實(shí)參
B.可以用int、double這樣的類型修飾符來(lái)聲明模板參數(shù)
C.模板聲明中的關(guān)鍵字class都可以用關(guān)鍵字typename替代
D.模板的形參表中可以有多個(gè)參數(shù)
【答案】D
16.要利用C++流進(jìn)行文件操作,必須在程序中包含的頭文件是( )。
A.iostream
B.fstream
C.strstream
D.iomanip
【答案】B
17.下列描述中,不屬于面向?qū)ο笏枷胫饕卣鞯氖? )。
A.封裝性
B.跨平臺(tái)性
C.繼承性
D.多態(tài)性
【答案】B
18.有如下程序段:
Tnt i=4;int j=l;
int main(){
int i=8,j=i;
cout<}
運(yùn)行時(shí)的輸出結(jié)果是( )。
A.44
B.41
C.88
D.81
【答案】C
19.下面的哪個(gè)選項(xiàng)不能作為函數(shù)的返回類型? ( )。
A.void
B.int
C.new
D.long
【答案】C
20.函數(shù)fun的返回值是( )。
fun(char*a,char*B.
{
int num=0,n=0;
while(*(a+num)!=‘\0’)num++;
while(b[n]){*(a+num)=b[n];num++;n++;}
return num;
}
A.字符串a(chǎn)的長(zhǎng)度
B.字符串b的長(zhǎng)度
C.字符串a(chǎn)和b的長(zhǎng)度之差
D.字符串a(chǎn)和b的長(zhǎng)度之和
【答案】D
21.有如下函數(shù)定義:
void func (int a,int&b) {a++; b++;}
若執(zhí)行代碼段:
int x=0 ,y=1
func(x,y);
則變量x和y值分別是( )。
A.0和1
B.1和1
C.0和2
D.1和2
【答案】C
22.有如下程序
#include
using namespace std;
class Sample{
public:
Sample(){}
~Sample(){cout<<‘*’;}
};
int main(){
Sample temp[2], *pTemp[2];
return 0;
}
執(zhí)行這個(gè)程序輸出星號(hào)(*)的個(gè)數(shù)為( )。
A.1
B.2
C.3
D.4
【答案】C
23.下列選項(xiàng)中,與實(shí)現(xiàn)運(yùn)行時(shí)多態(tài)性無(wú)關(guān)的是( )。
A.重載函數(shù)
B.虛函數(shù)
C.指針
D.引用
【答案】A
24.對(duì)類的構(gòu)造函數(shù)和析構(gòu)函數(shù)描述正確的是( )。
A.構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)不能重載
B.構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)可以重載
C.構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)也可以重載
D.構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)也不能重載
【答案】A
25.下面程序的運(yùn)行結(jié)果為( )。
#include
class A
{
int num;
public:
A(int i){num=i;}
A(A &A.{num=a. num++;}
void print(){cout<
};
void main()
{
A a1(),b(A);
a. print();
b.print();
A.11
B.12
C.21
D.22
【答案】C
26.在重載一個(gè)運(yùn)算符時(shí),如果其參數(shù)表中有一個(gè)參數(shù),則說(shuō)明該運(yùn)算符是( )。
A.一元成員運(yùn)算符
B.二元成員運(yùn)算符
C.一元友元運(yùn)算符
D.選項(xiàng)B和選項(xiàng)C都可能
【答案】D
27.下列關(guān)于模板的說(shuō)法正確的是( )。
A.模板的實(shí)參在任何時(shí)候都可以省略
B.類模板與模板類所指的是同一概念
C.類模板的參數(shù)必須是虛擬類型的
D.類模板中的成員函數(shù)全部都是模板函數(shù)
【答案】D
28.在公有派生情況下,有關(guān)派生類對(duì)象和基類對(duì)象的關(guān)系,下列敘述不正確的是( )。
A.派生類的對(duì)象可以賦給基類的對(duì)象
B.派生類的對(duì)象可以初始化基類的引用
C.派生類的對(duì)象可以直接訪問(wèn)基類中的成員
D.派生類的對(duì)象的地址可以賦給指向基類的指針
【答案】C
29.建立派生類對(duì)象時(shí),3種構(gòu)造函數(shù)分別是a(基類的構(gòu)造函數(shù))、b(成員對(duì)象的構(gòu)造函數(shù))、
c(派生類的構(gòu)造函數(shù))這3種構(gòu)造函數(shù)的調(diào)用順序?yàn)? )。
A.abc
B.acb
C.cab
D.cba
【答案】A
30.下面關(guān)于虛函數(shù)的描述,錯(cuò)誤的是( )。
A.在成員函數(shù)聲明的前面加上virtual修飾,就可把該函數(shù)聲明為虛函數(shù)
B.基類中說(shuō)明了虛函數(shù)后,派生類中對(duì)應(yīng)的函數(shù)也必須說(shuō)明為虛函數(shù)
C.虛函數(shù)可以是另一個(gè)類的友元函數(shù),但不能是靜態(tài)成員函數(shù)
D.基類中說(shuō)明的純虛函數(shù)在其任何派生類中都必須實(shí)現(xiàn)
【答案】B
31.定義派生類時(shí),若不使用關(guān)鍵字顯示地規(guī)定采用何種繼承方式,則默認(rèn)方式為( )。
A.私有繼承
B.非私有繼承
C.保護(hù)繼承
D.公有繼承
【答案】A
32.在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于( )。
A.操作數(shù)乘以2
B.操作數(shù)除以2
C.操作數(shù)乘以4
D.操作數(shù)除以4
【答案】B
33.有以下結(jié)構(gòu)體說(shuō)明和變量的定義,且指針p指向變量a,指針q指向變量b。則不能把節(jié)點(diǎn)b連接到節(jié)點(diǎn)a 之后的語(yǔ)句是( )。
struct node
{ char data;
struct node*next;
}a,b,*p=&a,*q=&b;
A.a. next=q;
B.p. next=&b;
C.p->next=&b;
D.(*p).next=q;
【答案】B
34.假定下列語(yǔ)句都是程序運(yùn)行后首次執(zhí)行的輸出語(yǔ)句,其中輸出結(jié)果與另外三條語(yǔ)句不同的語(yǔ)句是( )。
A.cout
35.有如下程序:
#include
using namespace std;
class ONE{
int c;
public:
ONE():c(0){cout<<1;}
ONE(int n):c(n){cout<<2;}
};
class TWO{
ONE onel;
ONE one2;
public:
TWO(int m):one2(m){cout<<3;}
};
int main(){
TWO t4()
return 0
}
運(yùn)行時(shí)的輸出結(jié)果是( )。
A.3
B.23
C.123
D.213
【答案】C
二、填空題(每空2分,共30分)請(qǐng)將每空的正確答案寫(xiě)在答題卡【1】~【15】序號(hào)的橫線上,答在試卷上不得分。
注意:以命令關(guān)鍵字填空的必須拼寫(xiě)完整。
1.數(shù)據(jù)管理技術(shù)發(fā)展過(guò)程經(jīng)過(guò)人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)三個(gè)階段,其中數(shù)據(jù)獨(dú)立性最高的階段是 【1】 。
【答案】數(shù)據(jù)庫(kù)系統(tǒng)
2.軟件測(cè)試分為白箱(盒)測(cè)試和黑箱(盒)測(cè)試,等價(jià)類劃分法屬于 【2】 測(cè)試。
【答案】黑盒
3.符合結(jié)構(gòu)化原則的三種基本控制結(jié)構(gòu)是:選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和 【3】 。
【答案】順序結(jié)構(gòu)
4.一棵二叉樹(shù)第六層(根結(jié)點(diǎn)為第一層)的結(jié)點(diǎn)數(shù)最多為 【4】 個(gè)。
【答案】32
5.數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu),循環(huán)隊(duì)列屬于 【5】 結(jié)構(gòu)。
【答案】存儲(chǔ)
6.有如下程序段:
int x=1,Y=2,z=3;
x=x^z;
y=y^z;
z=x^y;
cout<執(zhí)行這個(gè)程序段的輸出是 【6】 。
【答案】100
7.若要訪問(wèn)指針變量p所指向的數(shù)據(jù),應(yīng)使用表達(dá)式 【7】 。
【答案】*P
8.已知一個(gè)函數(shù)的原型是:
int fn(double x);
若要以5.27為實(shí)參調(diào)用該函數(shù),應(yīng)使用表達(dá)式 【8】 。
【答案】fn(5.27)
9.通過(guò)使用new和delete兩個(gè)運(yùn)算符進(jìn)行的分配為 【9】 存儲(chǔ)分配。
【答案】【9】動(dòng)態(tài)
10.如果類B繼承了類A,則稱類A為類B的基類,類B稱為類A的 【10】 。
【答案】【10】派生類
11.將x+y中的+運(yùn)算符用友元函數(shù)重載應(yīng)寫(xiě)為 【11】 。
【答案】【11】 operator+(x,y)
12.請(qǐng)將下列類定義補(bǔ)充完整。
class Base { public: void fun( ){ cout<<"Base::fun"<
class Derived : public Base {
public:
void fun( ) {
【12】 //顯式調(diào)用基類的fun函數(shù)
cout<<"Derived::fun"<}};
【答案】【12】Base::fun()
13.多數(shù)運(yùn)算符既能作為類的成員函數(shù)重載,也能作為類的非成員函數(shù)重載,但[ ]運(yùn)算符只能作為類的 【13】 函數(shù)重載。
【答案】【13】成員
14.表達(dá)式operator+(x,y)還可以表示為 【14】 。
【答案】【14】x+y
15.C++語(yǔ)言中的多態(tài)性分為編譯時(shí)的多態(tài)性和 【15】 時(shí)的多態(tài)性。
【答案】運(yùn)行
【下半年全國(guó)計(jì)算機(jī)二級(jí)C++考試預(yù)測(cè)卷附答案】相關(guān)文章:
2015下半年全國(guó)計(jì)算機(jī)考試二級(jí)C++預(yù)測(cè)卷答案及解析10-05
2015下半年全國(guó)計(jì)算機(jī)考試二級(jí)C++預(yù)測(cè)卷11-05
2015年9月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C++預(yù)測(cè)卷答案及解析09-11
2015年9月全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C++預(yù)測(cè)卷08-25
2015下半年全國(guó)計(jì)算機(jī)二級(jí)vf考試預(yù)測(cè)題(附答案)08-13
全國(guó)計(jì)算機(jī)二級(jí)《C++》上機(jī)試題附答案09-16
全國(guó)計(jì)算機(jī)二級(jí)考試《C++》筆試樣卷06-12