C復(fù)習(xí)題 清華大學(xué)出版社_第1頁
C復(fù)習(xí)題 清華大學(xué)出版社_第2頁
C復(fù)習(xí)題 清華大學(xué)出版社_第3頁
C復(fù)習(xí)題 清華大學(xué)出版社_第4頁
C復(fù)習(xí)題 清華大學(xué)出版社_第5頁
已閱讀5頁,還剩48頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——C復(fù)習(xí)題清華大學(xué)出版社

清華大學(xué)出版社譚浩強(qiáng)

一二章1.以下C++標(biāo)點(diǎn)符號(hào)中表示行解釋開始的是C。

A)#B);C)//D)}

2.以下字符串中可以用作C++標(biāo)示符的是A。

A)_256B)classC)deleteD)5char

3.以下關(guān)于C++函數(shù)的描述中正確的是C。

A)主函數(shù)是程序的入口,它是由用戶定義的函數(shù)調(diào)用。B)函數(shù)是

C++中面向?qū)ο蟪绦蛟O(shè)計(jì)框架的基本組成元素。

C)函數(shù)在調(diào)用前必需先被聲明。D)每個(gè)用戶定義函數(shù)只能被其他

函數(shù)調(diào)用一次。

4.以下關(guān)于C++關(guān)鍵字的說法中正確的是D。

A)關(guān)鍵字是用戶為程序中各種需要命名的“元素〞所起的名字。B)

關(guān)鍵字是對(duì)程序中的數(shù)據(jù)進(jìn)行操作的一類單詞。

C)關(guān)鍵字是在程序中起分割內(nèi)容和界定范圍作用的一類單詞。D)

關(guān)鍵字是C++中預(yù)先定義并實(shí)現(xiàn)一定功能得一類單詞。

5.每個(gè)C++程序都必需由且僅有一個(gè)B。

A)預(yù)處理命令B)主函數(shù)C)函數(shù)D)語句

6.下面關(guān)于對(duì)象概念的描述中,A是錯(cuò)誤的。

A)對(duì)象就是C語言中的結(jié)構(gòu)變量B)對(duì)象代表著正在創(chuàng)立的系

統(tǒng)中的一個(gè)實(shí)體

C)對(duì)象是一個(gè)狀態(tài)和操作(或方法)的封裝體D)對(duì)象之間的信

息傳遞是通過消息進(jìn)行的

7.C++對(duì)C語言做了好多改進(jìn),以下描述中D使得C語言

發(fā)生了質(zhì)變,即從面向過程變成面向?qū)ο蟆?/p>

A)增加了一些新的運(yùn)算符B)允許函數(shù)重載,并允許設(shè)置默認(rèn)參

數(shù)

C)規(guī)定函數(shù)說明必需用原型D)引進(jìn)類和對(duì)象的概念

8.下面關(guān)于類概念的描述中,D是錯(cuò)誤的。

A)類是抽象數(shù)據(jù)類型的實(shí)現(xiàn)B)類是具有共同行為的若干

對(duì)象的統(tǒng)一描述體

C)類是創(chuàng)立對(duì)象的樣板D)類就是C語言中的結(jié)構(gòu)體類型

9.C++語言是以B語言為基礎(chǔ)逐漸發(fā)展而蛻變而成的一種程

序設(shè)計(jì)語言。

A)PascalB)CC)BasicD)Simula67

A)return語句中的表達(dá)式類型所決定的B)調(diào)用該函數(shù)式的主調(diào)用函數(shù)類型所決定的C)調(diào)用該函數(shù)式系統(tǒng)臨時(shí)確定的D)在定義該函數(shù)式所指的數(shù)據(jù)類型所決定的11.以下關(guān)于C++與C語言關(guān)系的描述中錯(cuò)誤的是C。A)C++是C語言的超集B)C++是C語言進(jìn)行了擴(kuò)展C)C++是C語言都是面向?qū)ο蟮某绦蛟O(shè)計(jì)語言D)C++包含C語言的全部語法特征12.以下字符串中可以用做C++標(biāo)示符的是A。A)521B)computer~1C)caseD)3var13.面向?qū)ο蟪绦蛟O(shè)計(jì)思想的主要特征中不包括D。A)封裝性B)多態(tài)性C)繼承性D)功能分解,逐步求精14.以下C++標(biāo)點(diǎn)符號(hào)中表示一條預(yù)處理命令開始的是A。A)#B)//C)}D);15.以下關(guān)于C++類的描述中錯(cuò)誤的是C。A)類與類之間可以通過一些手段進(jìn)行通信和聯(lián)絡(luò)B)類用于描述事物的屬性和對(duì)事物的操作C)類與類之間必需是平等的關(guān)系,而不能組成層次關(guān)系D)類與類之間可以通過封裝而具有明確的獨(dú)立性16.以下C++標(biāo)點(diǎn)符號(hào)中表示一條語句終止的是A。A);B)//C)#D){17.以下C++標(biāo)點(diǎn)符號(hào)中表示復(fù)合語句終止的標(biāo)記符是C。A)#B)//C)}D);18.以下C++標(biāo)點(diǎn)符號(hào)中表示復(fù)合語句開始的標(biāo)記符是A。A){B)//C)}D);19.以下關(guān)鍵字中,B即在C語言中使用,又在C++語言中使用。A)inlineB)breakC)privateD)public20.以下字符串中不可以用作C++標(biāo)示符的是C。A)521B)computer123C)intD)flower21.以下不正確的選項(xiàng)是D。A)C++語言是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,它支持面向?qū)ο笏枷胫械?個(gè)主要特征B)標(biāo)點(diǎn)符號(hào)是在程序中起分割內(nèi)容和界定范

清華大學(xué)出版社譚浩強(qiáng)

些輸入輸出流對(duì)象

D)類與類之間不可以進(jìn)行通信和聯(lián)絡(luò)

22.以下不正確的選項(xiàng)是B。

A)封裝是一種信息隱蔽技術(shù)B)標(biāo)識(shí)符是由字母、數(shù)字、下劃

線組成的字符串,必需以數(shù)字或下劃線開頭

C)編譯是由源程序文件轉(zhuǎn)換到目標(biāo)文件的過程D)一個(gè)C++程序

可以認(rèn)為是函數(shù)串

23.以下與流程控制有關(guān)的關(guān)鍵字是A。

A)gotoB)staticC)intD)sizeof

24.以下正確的選項(xiàng)是A。

A)繼承是創(chuàng)立一個(gè)具有別的類的屬性和行為的新類的能力B)C

語言支持面向?qū)ο蟮某绦蛟O(shè)計(jì)

C)空白符是一種可以被編譯的符號(hào)D)標(biāo)示符不宜過長(zhǎng),一般設(shè)

定為16個(gè)字符

25.以下關(guān)于C++語言的發(fā)展說法錯(cuò)誤的是C。

A)C++語言起源于C語言B)C++語言最初被稱為“帶類的C〞C)

在1980年C++被命名D)在1983年C++被命名

26.下面說法錯(cuò)誤的選項(xiàng)是C。

A)引用表達(dá)式是一個(gè)左值表達(dá)式,因此它可以出現(xiàn)在形參和實(shí)參的

任何一方

B)若一個(gè)函數(shù)返回了引用,那么該函數(shù)的調(diào)用也可以被賦值

C)所有函數(shù)都可以返回引用D)引用返回值時(shí),不生成值的

副本

27.以下表示引用的方法中,A是正確的。

已知:intk=1000;

A)intx=k;B)chary;C)intz=1000;D)floatt=k;

28.以下程序的執(zhí)行結(jié)果為A。

#includeiostream.h

voidmian()

{

intn=10;

int*pn=n;

int*rn=pn;

coutn=nendl;(*rn)++;cout〞n=〞nendl;}A)n=11n=12B)n=11n=11C)n=10n=11D)n=11n=1029.以下引用的定義中,B是錯(cuò)誤的。A)inti;intj=i;B)inti;intj;j=i;C)floati;floatj=i;C)chard;chark=d;30.B是給對(duì)象取了一個(gè)別名,他引入了對(duì)象的同義詞。A)指針B)引用C)枚舉D)結(jié)構(gòu)31.以下表示引用的方法中,A是正確的。已知:intm=10;A)intx=m;B)inty=10;C)intz;D)floatt=m;32.下面程序的運(yùn)行結(jié)果是A。#includeiostream.hvoidfun(inta,intb){intp;p=a;a=b;b=p;}voidexchange(inta,intb,intc){if(ab)fun(a,b);if(ac)fun(a,c);if(bc)fun(b,c);}voidmain(){inta,b,c;

清華大學(xué)出版社譚浩強(qiáng)

b=639;是C。

c=78;

exchange(a,b,c);

couta=a,b=b,c=cendl;

}

A)a=639,b=78,c=12B)a=12,b=639,c=78C)a=639,b=12,c=78

D)a=78,b=12,c=639

33.下面的程序輸出結(jié)果為C。

#includeiostream.h

voidmain()

{

int*ir;

inti;

ir=i;

i=17;

coutinti=iendl;

coutintir=*irendl;

}

A)inti=17intir=0B)inti=0intir=17

C)inti=17intir=17D)程序語法錯(cuò)誤,沒有輸出結(jié)果

34.對(duì)定義重載函數(shù)的以下要求中,D是錯(cuò)誤的。

A)要求參數(shù)的個(gè)數(shù)不同B)要求參數(shù)中至少有一個(gè)類型不同

C)要求參數(shù)個(gè)數(shù)一致時(shí),參數(shù)類型不同D)要求函數(shù)的返回值不同

35.下面函數(shù)調(diào)用語句中實(shí)參的個(gè)數(shù)是A。

xxx((v1,v2),(v3,v4,v5),v6);

A)3B)4C)5D)6

36.系統(tǒng)在調(diào)用重載函數(shù)時(shí)往往根據(jù)一些條件確定哪個(gè)重載函數(shù)被

調(diào)用,在以下選項(xiàng)中,不能作為依據(jù)的是D。

A)參數(shù)個(gè)數(shù)B)參數(shù)的類型C)函數(shù)名稱D)函數(shù)

的類型

37.若要定義一個(gè)只允許來源文件中所有函數(shù)使用的全局變量,則

該變量需要使用的存儲(chǔ)類別是D。

A)externB)registerC)autoD)static

A)不允許設(shè)置設(shè)置參數(shù)的默認(rèn)值B)設(shè)置參數(shù)默認(rèn)值只能在定義函數(shù)時(shí)設(shè)置C)設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)當(dāng)實(shí)現(xiàn)設(shè)置右邊的再設(shè)置左邊的D)設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)當(dāng)全部參數(shù)都設(shè)置39.若有下面函數(shù)調(diào)用語句:fun(a+b,(x,y),fun(n+k,d,(a+b)));在此函數(shù)調(diào)用語句中實(shí)參的個(gè)數(shù)是A。A)3B)4C)5D)640.以下對(duì)重載函數(shù)的描述中,A是錯(cuò)誤的。A)重載函數(shù)中不允許使用默認(rèn)參數(shù)B)重載函數(shù)中編譯時(shí)根據(jù)參數(shù)表進(jìn)行選擇C)不要使用重載函數(shù)來描述毫無相干的函數(shù)D)構(gòu)造函數(shù)重載將會(huì)給初始化帶來多種方式41.在函數(shù)聲明時(shí),以下D項(xiàng)是不必要的。A)函數(shù)的類型B)函數(shù)參數(shù)類型C)函數(shù)的名字D)返回值表達(dá)式42.在函數(shù)的返回值類型與返回值表達(dá)式的類型的描述中,錯(cuò)誤的是B。A)函數(shù)返回值的類型是在定義函數(shù)時(shí)確定,在函數(shù)調(diào)用時(shí)是不能改變的B)函數(shù)返回值的類型就是返回值表達(dá)式的類型C)函數(shù)返回值表達(dá)式類型與返回值類型不同時(shí),函數(shù)表達(dá)式類型應(yīng)轉(zhuǎn)換成返回值類型D)函數(shù)返回值類型確定了返回值表達(dá)式的類型43.下面變量和函數(shù)說明:#includeiostream.hcharch='*';voidsub(intx,inty,charch,double*z){switch(ch){case'+':*z=x+y;break;case'-':*z=x-y;break;

清華大學(xué)出版社譚浩強(qiáng)

case'/':*z=x/y;break;

}

}

下面合法的函數(shù)調(diào)用語句

是B。A)sub(10,20,ch,y);B)sub(1.2+3.2,'+',z);C

)sub(sub(1,2,'+',y),sub(3,4,'+',x),'-',y);D)sub(a,b,x,ch);

44.以下程序的輸出結(jié)果是B。

#includeiostream.h

voidsub1(chara,charb)

{

charc;

c=a;

a=b;

b=c;

}

voidsub2(char*a,charb)

{

charc;

c=*a;

*a=b;

b=c;

}

voidsub3(char*a,char*b)

{

charc;

c=*a;

*a=*b;

*b=c;

}

voidmain()

{

chara,b;

a='A';

sub1(a,b);putchar(a);putchar(b);a='A';b='B';sub2(a,b);putchar(a);putchar(b);a='A';b='B';sub3(a,b);putchar(a);putchar(b);putchar('\n');}A)ABABABB)ABBBBAC)ABBABA45.下面程序的正確執(zhí)行結(jié)果為D。#includeiostream.hintf(int);voidmain(){inta=2,i;for(i=0;i3;i++)coutf(a);coutendl;}intf(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);D)ABABBA

清華大學(xué)出版社譚浩強(qiáng)

A)777B)71013C)7911D)789

46.下面程序的正確執(zhí)行結(jié)果為C。

#includeiostream.h

voidfun(char**m)

{

m++;

cout*mendl;

}

voidmain()

{

staticchar*a[]={MORNING,AFTERNOON,EVENING};

char**n;

n=a;

fun(n);

}

A)為

空B)MORNINGC)AFTERNOOND)EVENING

47.下面程序的輸出結(jié)果B。

#includeiostream.h

intfun(char*s)

{

char*p=s;

while(*p!='\0')

p++;

return(p-s);

}

voidmain()

{

coutfun(ABCDEF)endl;

}

A)3B)6C)8D)0

48.當(dāng)一個(gè)函數(shù)無返回值時(shí),函數(shù)的類型應(yīng)定義為A。

A)voidB)任意C)intD)無

A)在函數(shù)中,通過return語句傳回函數(shù)值B)在函數(shù)中,可以有多條return語句C)主函數(shù)名main()后面的一對(duì)圓括號(hào)中也可以帶有形參D)調(diào)用函數(shù)必需在一條獨(dú)立的語句中完成50.以下D的調(diào)用方式是引用調(diào)用。A)形參是指針,實(shí)參是地址值B)形參和實(shí)參都是變量C)形參是數(shù)組,實(shí)參是變量D)形參是引用,實(shí)參是變量51.在C++中,函數(shù)原型不能標(biāo)識(shí)D。A)函數(shù)的返回類型B)函數(shù)參數(shù)的個(gè)數(shù)C)函數(shù)參數(shù)類型D)函數(shù)的功能52.以下標(biāo)識(shí)符中,C是文件級(jí)作用域的。A)函數(shù)形參B)語句標(biāo)號(hào)C)外部靜態(tài)類標(biāo)識(shí)符D)自動(dòng)類標(biāo)識(shí)符53.在傳值調(diào)用中,要求C。A)形參和實(shí)參類型任意,個(gè)數(shù)相等B)實(shí)參和形參類型都完全一致,個(gè)數(shù)相等C)實(shí)參和形參對(duì)應(yīng)的類型一致,個(gè)數(shù)相等D)實(shí)參和形參對(duì)應(yīng)的類型一致個(gè)數(shù)任意54.有一個(gè)int型變量,在程序中頻繁使用,最好定義它為A。A)registerB)autoC)externD)static55.考慮下面的函數(shù)原型:voidtestDefaulParam(inta,intb=7,charz='*');下面函數(shù)調(diào)用中不合法的C。A)testDefaulParam(5);B)testDefaulParam(5,8);C)testDefaulParam(5,'#');D)testDefaulParam(0,0,'*');56.采用函數(shù)重載的目的在于D。A)實(shí)現(xiàn)共享B)減少空間C)提高速度D)使用便利,提高可靠性57.要求通過函數(shù)來實(shí)現(xiàn)一種不太繁雜的功能,并且要加快執(zhí)行速度,選用A。A)內(nèi)聯(lián)函數(shù)B)重載函數(shù)C)遞歸函數(shù)D)嵌套函數(shù)58.下面程序的輸出結(jié)果是D。

清華大學(xué)出版社譚浩強(qiáng)

voidfun(inti);

intmain()

{

intn=2;

fun(n);

return0;

}

voidfun(inti)

{

staticintx=1;

inty=1;

if(i0)

{

++x;

++y;

coutx''y'';

fun(i-1);

}

}

A)語法錯(cuò)誤,不能輸出正確結(jié)果B)2222C)2233

2

59.下面程序的輸出結(jié)果為B。

#includeiostream.h

voidprt(int*x,int*y,int*z)

{

cout++*x,++*y,*(z++)endl;

}

inta=10;

intc=20;

intb=40;

voidmain()

{

prt(a,b,c);

}A)11,42,3112,21,41B)11,41,2012,42,20C)11,21,4011,21,41D)11,41,2112,42,2260.下面程序的正確運(yùn)行結(jié)果為C。#includeiostream.hfun(inta,intb){staticintm=1,i=2;i+=m+1;m=i+a+b;return(m);}voidmain(){intk=5,m=2,p;p=fun(k,m);coutp,;p=fun(k,m);coutpendl;D)223}A)11,22B)12,23C)11,23D)10,2361.下面程序的輸出結(jié)果是D。#includeiostream.hvoidfun(int*s,int*y){staticintt=3;*y=s[t];t--;}voidmain(){inta[]={1,2,3,4};inti,x=10;

清華大學(xué)出版社譚浩強(qiáng)

fun(a,x);

coutx,;

}

coutendl;

}

A)1,2,3,4B)0,0,0,0C)4,4,4,4D)4,3,2,1

62.下面程序的輸出結(jié)果是A。

#includeiostream.h

intfun(char*s)

{

char*p=s;

while(*p!='\0')

p++;

return(p-s);

}

voidmain()

{

coutfun(ABCDEFGHIJKLMNIPQRST)endl;

}

A)20B)6C)19D)0

63.下面程序的輸出結(jié)果是C。

#includeiostream.h

intx=10;

voidfun(intc);

voidmain()

{

fun(x);

coutx=xendl;

}

voidfun(intx)

{

x=1;

64.下面程序的執(zhí)行結(jié)果是B。#includeiostream.hvoidmain(){voidswap();externinta,b;a=3;b=10;swap();couta=a,b=endl;}inta,b;voidswap(){inttemp;temp=a;a=b;b=temp;}A)a=3,b=10B)a=10,b=3C)a=temp,b=tempD)語法錯(cuò)誤,不能輸出正確結(jié)果65.以下程序的輸出結(jié)果是A。#includeiostream.hvoidf(){staticinti=15;i++;couti=iendl;}voidmain(){for(intk=0;k2;k++)

清華大學(xué)出版社譚浩強(qiáng)

A)i=16i=17B)i=16i=15C)i=15i=16D)i=15i=17

66.在橫線處填上適當(dāng)?shù)恼Z句C,使下面程序執(zhí)行結(jié)果是13,

18,23。

#includeiostream.h

intadd(intx,inty=8);

voidmain()

{

;

coutadd(a),;

coutadd(a,add(a)),;

coutadd(a,add(a,add(a)))endl;

}

intadd(inta,intb)

{

ints=a+b;

returns;

}

A)inta=3B)intb=3C)inta=5D)intb=5

67.在橫線處填上適當(dāng)?shù)恼Z句A,使下面的程序的執(zhí)行結(jié)果是1924

303745。

#includeiostream.h

intfun(inta)

{

staticintx=10;

inty=1;

x+=a;

a++;

y++;

return(x+y+a);

}

voidmain()

{

;coutendl;}A)coutfun(i++)B)coutfun(i)C)coutfun(i++),D)coutfun(i),68.在C++語言中,局部變量的隱含存儲(chǔ)類型是D。A)autoB)staticC)externD)無存儲(chǔ)類型69.下面程序的輸出結(jié)果為。#includeiostream.hintfun(char*s);intmain(){coutfun(hello);return0;}intfun(char*s){char*t=s;while(*t!='\0')t++;return(t-s);}A)語法錯(cuò),不能輸出正確結(jié)果B)0C)6D)5

清華大學(xué)出版社譚浩強(qiáng)

C)類A是類C的友元D)以上都不對(duì)3.有下面類的說明,有錯(cuò)誤的語句是____A______。

第三章一、選擇題

1.有關(guān)類的說法不正確的是____D______。

A)類是一種用戶字定義的數(shù)據(jù)類型.

B)只有類中的成員函數(shù)才能存取類中的私有成員.

C)在類中,假使不做特別說明,所指的數(shù)據(jù)均為私有類型.

D)在類中,假使不做特別說明,所指的成員函數(shù)均為公有類型。

2.類A是類B的友元,類B是類C的友元,則____D______是正確的.

classX{A)inta=2;B)X();public:C)X(intval):D)~X();};4.有關(guān)析構(gòu)函數(shù)的說法不正確的是_____B_____。A)析構(gòu)函數(shù)有切僅有一個(gè)B)析構(gòu)函數(shù)和構(gòu)造函數(shù)一樣可以有形參C)析構(gòu)函數(shù)的功能是用來釋放一個(gè)對(duì)象D)析構(gòu)函數(shù)無任何函數(shù)類型5.已知一個(gè)類X,_____C_____是定義指向類X成員函數(shù)的指針,假設(shè)類有3個(gè)公有成員:voidf1(int),voidf2(int)和inta.A)X*PB)intX::*pc=X::aC)void(X::*pa)()D)X*p[10]6.以下的各類函數(shù)中,____C______不是類的成員函數(shù)A)構(gòu)造函數(shù)B)析構(gòu)函數(shù)C)友元函數(shù)D)拷貝構(gòu)造函數(shù)7.以下定義中,X是一個(gè)類,______B____是定義指向?qū)ο髷?shù)組的指針p.A)x*p[4]B)x(*p)[4]C)(x*)p[4]

清華大學(xué)出版社譚浩強(qiáng)

8.已知p是一個(gè)指向類X數(shù)據(jù)成員m的指針,s是類X的一個(gè)對(duì)象。

假使要給m賦值為3,__C_____是正確的.

A)s.p=3

B)s-p=3

C)s.*p=3

D)*s.p=3

9.已知f1(int)是類X的公有成員函數(shù),p是指向成員f1()的指針,采

用它賦值,____B______是正確的.

A)p=f1

B)p=X::f1

C)p=x::f1

D)p=f1()

10.已知類X中的一個(gè)成員函數(shù)說明如下:

VoidSet(xa);

其中,Xa的含義是______C____.

A)指向類X的指針為a

B)將a的地址賦給變量Sst

C)a是類X的對(duì)象引用,用來做為Set()的形參

D)變量X是a按位相與作為函數(shù)Set()的參數(shù)

11.一個(gè)類的友元函數(shù)能夠訪問該類的______D____.

A)私有成員

B)保護(hù)成員

C)公有成員

D)所有成員

12.有關(guān)類和對(duì)象的說法不正確的是______B____.

A)對(duì)是類的一個(gè)實(shí)例

B)一各類只能有一個(gè)對(duì)象

C)任何一個(gè)對(duì)象只能屬于一個(gè)具體的類

D)類與對(duì)象的關(guān)系和數(shù)據(jù)類型和變量的關(guān)系相像

13.以下靜態(tài)數(shù)據(jù)成員的特性中,_____D_____是錯(cuò)誤的.

A)說明靜態(tài)數(shù)據(jù)成員時(shí)前邊要加關(guān)鍵字static來修飾

B)靜態(tài)數(shù)據(jù)成員在類體外進(jìn)行初始化

C)引用靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名前加類名和作用域

D)靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共有的14.類模板的使用實(shí)際上是類模板實(shí)例化成一個(gè)具體的_____A_____.A)類B)對(duì)象C)函數(shù)D)模板類15.尋??截悩?gòu)造函數(shù)的參數(shù)表是_____C_____.A)某個(gè)對(duì)象名B)某個(gè)對(duì)象的成員名C)某個(gè)對(duì)象的引用名D)某個(gè)對(duì)象的指針名16.關(guān)于常數(shù)據(jù)成員的說法不正確的是_____D_____.A)常數(shù)據(jù)成員的定義形式與一般常量的定義形式一致,只不過常數(shù)據(jù)成員的定義必需出現(xiàn)在類體中.B)常數(shù)據(jù)成員必需進(jìn)行初始化,并且不能被更新C)常數(shù)據(jù)成員通過構(gòu)造函數(shù)的成員初始化列表進(jìn)行初始化D)常數(shù)據(jù)成員可以在定義時(shí)直接初始化17.已知X類.則當(dāng)程序執(zhí)行到語句Xarray[3];時(shí),調(diào)用了____D______次構(gòu)造函數(shù).A)0B)1C)2D)318.類模板的模板參數(shù)_____D_____.A)只可作為數(shù)據(jù)成員的類型B)只可作為成員函數(shù)的返回類型C)只可作為成員函數(shù)的參數(shù)類型D)以上三者皆可19.以下_______D___不是構(gòu)造函數(shù)的特征A)構(gòu)造函數(shù)的函數(shù)名與類名一致B)構(gòu)造函數(shù)可以重載

清華大學(xué)出版社譚浩強(qiáng)

D)構(gòu)造函數(shù)必需指定類型說明

20.以下程序中說明的公有成員是______D____.

classLocation{

intX;

public:

voidinit(intinitX,intinitY);

private:

intY;

public:

intGetX();

intGetY();

}

A)X

B)init(intinitX,intinitY)

C)GetX(),GetY()

D)B)和C)都是

21.類定義的內(nèi)容允許被其他對(duì)象無限制地存取是______C____.

A)private部分

B)protected部分

C)public部分

D)以上都不對(duì)

22.關(guān)于下面程度段說法正確的是_____A_____.

classX

{

private:

intn;

punblic:

X(X);

}

X::X(Xx)

{n=x.n}

Xobj1,obj2;

obj2(obj1);

的對(duì)象obj2B)語句obj2(obj1);的功能是用對(duì)象obj2初始化具有一致類類型的對(duì)象obj1C)X(Xx)也可以不使用引用參數(shù)而依舊是拷貝構(gòu)造函數(shù)D)X(Xx)不能訪問對(duì)象的私有成員23.this指針是C++實(shí)現(xiàn)_____B_____的一種機(jī)制.A)抽象B)封裝C)繼承D)重載24.下面程序段中是內(nèi)聯(lián)函數(shù)的是____C______。chasslocation{private:intx,y;public:voidinit(intinitx,intinity){x=initx;y=inity;}intgetx(){returnx;}intgety();};inlineintlocation::gety(){returny;}A)init(intinitx,intinity)B)getx(),gety()C)A)和B)都是D)A)和getx()25.關(guān)于對(duì)象成員的構(gòu)造函數(shù)的調(diào)用順序,說法正確的是_____C_____。A)與他們?cè)诔蓡T初始化列表中給出的順序一致B)與折構(gòu)函數(shù)的調(diào)用順序一致C)與他們?cè)陬愔姓f明順序一致

清華大學(xué)出版社譚浩強(qiáng)

26.類摸板trmplateclassTclassX{……},其中,友元函數(shù)f()成為

該類模板實(shí)例化的每個(gè)模板類的友元,則其說明應(yīng)為_____A_____.

A)friendvoidf()

B)friengvoidf(XT);

C)friendvoidA::f();

D)friendvoidCT::f(XT);

27.運(yùn)算符—*的功能是(A)。

A)用來表示指向?qū)ο笾羔槍?duì)指向類成員指針的操作。

B)用來表示對(duì)象類成員的操作。

C)用來表示指向?qū)ο笾羔槍?duì)類成員的操作。

D)用來表示對(duì)象指向類成員指針的操作。

28.以下說明中

constchar*ptr;

ptr應(yīng)當(dāng)是C。

A)指向字符的指針

B)指向字符的常量指針

C)指向字符串常量的指針

D)指向字符串的常量指針

29.下面關(guān)于友元的描述中,錯(cuò)誤的是(D)。

A)友元函數(shù)可以訪問該類的私有數(shù)據(jù)成員。

B)一個(gè)類的友元類中的成員函數(shù)都是這個(gè)類的友元函數(shù)。

C)友元可以提高程序的運(yùn)行效率。

D)類與類之間的友元關(guān)系可以繼承。

30.一個(gè)(C)允許擁護(hù)為類定義一種模式,使得類中的某些

數(shù)據(jù)成員、某些成員函數(shù)底參數(shù)和返回值可以取任意數(shù)據(jù)類型。

A)函數(shù)模板

B)模板函數(shù)

C)類模板

D)模板類

31.有關(guān)構(gòu)造函數(shù)說法不正確的是(D)

A)構(gòu)造函數(shù)的名字和類的名字一樣。

B)在創(chuàng)立對(duì)象時(shí),系統(tǒng)自動(dòng)調(diào)用構(gòu)造函數(shù)

C)構(gòu)造函數(shù)無任何函數(shù)類型

32.下面對(duì)模板的聲明,正確的是(C)A)templateTB)templateclassT1,T2C)templateclassT1,classT2D)templateclassT1;classT233.(D)是析構(gòu)函數(shù)的特征。A)析構(gòu)函數(shù)可以有一個(gè)或多個(gè)參數(shù)B)析構(gòu)函數(shù)定義只能在類體內(nèi)C)析構(gòu)函數(shù)名與類名不同D)一個(gè)類中只能定義一個(gè)析構(gòu)函數(shù)34.類模板templateclassTclassX{…..};,其中友元函數(shù)f對(duì)特定類型T(如int),使函數(shù)f(Xint)成為Xint模板類的友元,則其說明應(yīng)為(B)A)friendcoidf();B)friendcoidf(XT);C)friendcoidA::f();D)friendcoidCT::f(XT);35.若函數(shù)是在運(yùn)行激活的,則該函數(shù)稱為(B)A)內(nèi)聯(lián)函數(shù)B)非內(nèi)聯(lián)函數(shù)C)成員函數(shù)D)靜態(tài)成員函數(shù)36.在C++程序中,對(duì)象之間的象話通信通過(B)A)繼承實(shí)現(xiàn)B)調(diào)用成員函數(shù)實(shí)現(xiàn)C)封裝實(shí)現(xiàn)D)函數(shù)重載實(shí)現(xiàn)37.在類的定義形式中,數(shù)據(jù)成員、成員函數(shù)和(A)組成了類定義體。A)成員的訪問控制信息B)公有消息C)私有消息D)保護(hù)消息

清華大學(xué)出版社譚浩強(qiáng)

A)0

B)1

C)2

D)3

39.(C)的功能是對(duì)對(duì)象進(jìn)行初始化。

A)析構(gòu)函數(shù)

B)數(shù)據(jù)成員

C)構(gòu)造函數(shù)

D)靜態(tài)數(shù)據(jù)成員

40.友元關(guān)系不能(A)

A)繼承

B)是類與類之間是關(guān)系

C)是一個(gè)類的成員函數(shù)與另一個(gè)類的關(guān)系

D)提高程序的運(yùn)行效率

41.(A)只能訪問景泰成員變量,靜態(tài)成員函數(shù)和類以外的函

數(shù)和數(shù)據(jù)不能訪問類中的非靜態(tài)成員變量。

A)靜態(tài)函數(shù)

B)虛函數(shù)

C)構(gòu)造函數(shù)

D)析構(gòu)函數(shù)

42.下面說法正確的是(B)

A)內(nèi)聯(lián)函數(shù)在運(yùn)行時(shí)是將該函數(shù)的目標(biāo)代碼插入每個(gè)調(diào)用該函數(shù)

的地方

B)內(nèi)聯(lián)函數(shù)在編譯時(shí)是將該函數(shù)的目標(biāo)代碼插入每個(gè)調(diào)用該函數(shù)

的地方

C)類的內(nèi)聯(lián)函數(shù)必需在類體內(nèi)定義

D)類的內(nèi)聯(lián)函數(shù)必需在類體外關(guān)鍵字inline定義

43

以下關(guān)于成員訪問權(quán)限的描述中,不正確的是(B)

A)公有數(shù)據(jù)成員和公有成員函數(shù)都可以被類對(duì)象直接處理

B)類的私有數(shù)據(jù)成員只能被公有成員函數(shù)以及該類的任何友元類

或友元函數(shù)訪問

C)保護(hù)成員在派生類中可以被訪問,而私有成員不可以

成員44.局部變量可以隱蔽全局變量,那么在有同名全局變量和局部變量的情形時(shí),可以用(A)提供對(duì)全局變量的訪問A)域運(yùn)算符B)類運(yùn)算符C)重載D)引用45.缺省析構(gòu)函數(shù)的函數(shù)體是(C)A)不存在B)隨機(jī)產(chǎn)生的C)空的D)無法確定的、46.在以下關(guān)鍵字中,用以說明類中工友成員的是(A)A)publicB)privateC)protectedD)friend47.下面說法中正確的是(B)A)一個(gè)類只能定義一個(gè)構(gòu)造函數(shù),但可以定義多哥析構(gòu)函數(shù)B)一個(gè)類只能定義一個(gè)析構(gòu)函數(shù),但可以定義多個(gè)構(gòu)造函數(shù)C)構(gòu)造函數(shù)與析構(gòu)函數(shù)同名,知識(shí)名字前加了一個(gè)求反符號(hào)(~)D)構(gòu)造啊函數(shù)可以指定返回類型,而析構(gòu)函數(shù)不能指定任何返回類型,即使是void類型也不可以48.關(guān)于delete運(yùn)算符的以下描述中,(C)是錯(cuò)誤的。A)它必需用語new返回的指針B)它也適用于空指針C)對(duì)一個(gè)指針可以使用屢屢該運(yùn)算符D)指針名前只用一隊(duì)方括號(hào)符,不管所刪除數(shù)組的維數(shù)49.關(guān)于成員函數(shù)的特征的下述描述中,錯(cuò)誤的是(A)A)成員函數(shù)一定是內(nèi)聯(lián)函數(shù)B)成員函數(shù)可以重載C)成員函數(shù)可以設(shè)置參數(shù)的默認(rèn)值

清華大學(xué)出版社譚浩強(qiáng)

50.假定x為一個(gè)類,執(zhí)行Xa[3],*p[2];語句時(shí)會(huì)只動(dòng)調(diào)用該類的

構(gòu)造函數(shù)(B)次B)公有成員C)保護(hù)成員

A)2

B)3

C)4

D)5

51.由于數(shù)據(jù)隱蔽的需要,靜態(tài),數(shù)據(jù)成員尋常被說明為(A)

A)私有的

B)公有的

C)保護(hù)的

D)不可訪問的

52.假定X為一個(gè)類,則該類的拷貝構(gòu)造函數(shù)的聲明語句為(C)

A)MyClass(MyClassx)

B)MyClass(MyClassx)

C)MyClass(MyClassx)

D)MyClass(MyClass*x)

53.Main()函數(shù)在執(zhí)行之前不可以調(diào)用其構(gòu)造函數(shù)的(C)

A)全局對(duì)象

B)靜態(tài)對(duì)象

C)在main()函數(shù)體內(nèi)說明的對(duì)象

D)全局對(duì)象數(shù)組

54.對(duì)于常成員函數(shù),以下描述正確的是(C)

A)常成員函數(shù)只能修改常數(shù)據(jù)成員

B)常成員函數(shù)只能修改一般數(shù)據(jù)成員

C)常成員函數(shù)不能修改任何數(shù)據(jù)成員

D)_成員函數(shù)只能通過常對(duì)象調(diào)用

55.友元的作用是(A)

A)提高程序是運(yùn)行效率

B)加強(qiáng)類的封裝性

C)實(shí)現(xiàn)數(shù)據(jù)的隱蔽性

D)增加成員函數(shù)的種類

56.一個(gè)類的友元函數(shù)或友元類能夠通過成員操作符訪問該類的

(D)

D)公有成員、保護(hù)成員和私有成員57.下面說法中正確的是(D)A)當(dāng)聲明的內(nèi)容不同時(shí),聲明同一個(gè)名字的兩個(gè)類是允許的B)不完全生命的類也可以實(shí)例化C)聲明同一個(gè)名字的兩個(gè)類時(shí),要求聲明的內(nèi)容也一致D)生命同一個(gè)名字的兩個(gè)類是錯(cuò)誤的58.下面對(duì)靜態(tài)數(shù)據(jù)成員的描述中,正確的是(A)A)靜態(tài)數(shù)據(jù)成員是類的所有對(duì)象共享的數(shù)據(jù)B)類的沒個(gè)對(duì)象都有自己的靜態(tài)數(shù)據(jù)成員C)類的不同對(duì)象有不同的靜態(tài)數(shù)據(jù)成員值D)靜態(tài)數(shù)據(jù)成員不能通過類的對(duì)象調(diào)用59.以下關(guān)于對(duì)象數(shù)組的描述中,錯(cuò)誤的是(D)A)對(duì)象數(shù)組的下標(biāo)是從0開始的B)對(duì)象數(shù)組的數(shù)組名是一個(gè)常量指針C)對(duì)象數(shù)組的沒個(gè)元素是同一個(gè)類的對(duì)象D)對(duì)象數(shù)組只能賦初值,而不能在定義后賦值60.對(duì)于下面定義的類A在函數(shù)f()中將對(duì)象成員n的值修改為60的語句應(yīng)當(dāng)是(C)classA{public:A(intx){n=x;}coidSetNum(intn1){n=n1;}privateintn;}intf()}a*ptr=newA(60);}A)A(60)

清華大學(xué)出版社譚浩強(qiáng)

C)Ptr-SetNum(60)

D)Ptr-n=60

61.關(guān)于使用const關(guān)鍵字修飾的對(duì)象的說法正確的是(A)

A)不能用一般的成員函數(shù)來訪問

B)可以用一般的成員函數(shù)來訪問

C)可以訪問const成員函數(shù)及colatile成員函數(shù)

D)不能訪問const成員函數(shù)

62.下面是類MyClass的定義,對(duì)定義中各語句描述正確的是#includeiostream.hcoidfun(){staticintn=10;n++;cout〞n=〞nendl;}voidmain(){

(D)

classMyClass

{

private:

intX,y,Z;

public;

coidMyClass(inta){X=a;}

intf(inta,intb)file://②

{

X=a;

Y=b;}

Intf(inta,intb,intc=0)

{a;

Y=b;

Z=c;}

Staticcoidg(){X=10;}

A)語句①是類MyClass的構(gòu)造函數(shù)定義

B)語句②和語句③實(shí)現(xiàn)類成員函數(shù)的重載

C)語句④實(shí)現(xiàn)對(duì)類成員變量X的更新操作

D)語句①②③和④都不正確

63.友元訪問類的對(duì)象的成員時(shí)使用(D)

A)類的成員名

B)this指針指向成員名

C)“類名::成員名〞的形式

D)“對(duì)象名.成員名〞的形式

for(intI=1;I3;I++)cun();}A)n=11n=11B)n=11n=12C)n=10n=11D)n=10n=1065.下面類模板的定義中,不正確的是(C)A)tempateclassTclassA{Tx,y;};B)tempateclassTclassA{private:tx;};C)tempateclassTclassA{public:Tx;};D)tempateclassTclassA{protected:tx;};66.靜態(tài)成員遵循類的其他成員所遵循的訪問限制,除了(BA)靜態(tài)成員函數(shù)B)靜態(tài)數(shù)據(jù)成員初始化C)私有靜態(tài)數(shù)據(jù)成員D)公有靜態(tài)成員函數(shù)67.空類的聲明(B)是正確A)class類名;B)class類名{};C)class類名{})

清華大學(xué)出版社譚浩強(qiáng)

68.可以用“px-*p〞來訪問類A的對(duì)象a的數(shù)據(jù)成員,則下面正確

的是(B)

A)px是指向類數(shù)據(jù)成員的指針

B)p是指向類數(shù)據(jù)成員的指針

C)p是指向類的對(duì)象的指針

D)無法確定指針類型

69.關(guān)于類中數(shù)據(jù)成員的生存期的說法正確的是(D)

A)與對(duì)象的生存期無關(guān)

B)比對(duì)象的生存期長(zhǎng)

C)比對(duì)象的生存期短

D)有對(duì)象的生存期決定

70.類example的析構(gòu)函數(shù)為(D)

A)example();

B)example()

C)~example();

D)~example()

71.以知AA是一個(gè)類,則執(zhí)行語句Aaa;后(A)

A)自動(dòng)調(diào)用無參構(gòu)造函數(shù)

B)自動(dòng)調(diào)用有參構(gòu)造函數(shù)

C)自動(dòng)調(diào)用拷貝構(gòu)造函數(shù)

D)產(chǎn)生一個(gè)對(duì)象a,但不調(diào)用任何函數(shù)

72.對(duì)于類模板tanytemp,執(zhí)行語句tanytempintiobject(23,32);

后(C)

A)產(chǎn)生的模板類為tanytemp

B)產(chǎn)生的模板類為iobject

C)產(chǎn)生的模板類為tanytempint

D)類模板實(shí)例化對(duì)象

73.以下說法正確的是(C)

A)類定義中只能說明函數(shù)成員的函數(shù)頭,不能定義函數(shù)體

B)類中的函數(shù)成員只能可以在類體內(nèi)定義,不可能在類體外定義

C)類中的函數(shù)成員在類體外定義時(shí)必需要與類聲明在同一文件中

D)在類體外定義的函數(shù)成員不能操作該類的私有數(shù)據(jù)成員

74.類的構(gòu)造函數(shù)被自動(dòng)調(diào)用執(zhí)行的狀況是在定義該類的(C)

B)數(shù)據(jù)成員時(shí)C)對(duì)象時(shí)D)友元函數(shù)時(shí)75.說明友元函數(shù)使用關(guān)鍵字(A)A)friendB)staticC)constD)colatile76.有關(guān)類的作用域.下了說法中不正確的是(B)A)說明類時(shí)所使用的一對(duì)花括號(hào)形成所謂的類作用域B)類作用域不C)包含類匯總成員函數(shù)的作用域D)類作用域中說明的標(biāo)E)識(shí)符只在類中可見F)在可能出現(xiàn)兩義性的狀況下,必需使用作用域限定符〞::〞77.類的靜態(tài)成員(C)A)是指B)靜態(tài)數(shù)據(jù)成員C)是指D)靜態(tài)函數(shù)成員E)為該類的所有對(duì)象共享F)遵循類的其他成員做遵循的所有訪問權(quán)限78.允許訪問類的所有對(duì)象的私有成員,公有成員和保護(hù)成員的是(A)A)友元函數(shù)B)成員函數(shù)C)內(nèi)聯(lián)函數(shù)D)重載函數(shù)79.形如X::X(X)的構(gòu)造函數(shù)稱為(D)A)拷貝函數(shù)B)復(fù)C)制函數(shù)D)初始化函數(shù)E)拷貝初始化構(gòu)造函數(shù)80.以知example是已定義的類,則程序終止前,共存在(B)個(gè)對(duì)象.#includeexample.hmain(){examplex(5);examplearr[2]={1,2};

清華大學(xué)出版社譚浩強(qiáng)

x.print();

x=example(15);

x.print();

}

A)3

B)4

C)7

D)8

81.所有在函數(shù)中定義的變量,連同形式參數(shù),都屬于(B)

A)全局變量

B)局部變量

C)靜態(tài)變量

D)寄放器變量

82.在C++中,封狀是借助于(B)達(dá)到的.

A)結(jié)構(gòu)

B)類

C)數(shù)組

D)函數(shù)

83.下面不屬于類的存取權(quán)限的是(B)

A)public

B)static

C)protected

D)pricate

84.指向類X中類型為type的數(shù)據(jù)成員的指針的說明形式為(A)

A)typeX::*pointer

B)x::type*pointer

C)type*X::pointer

D)X::*tyoepointer

85.已知:print()函數(shù)是一個(gè)類的常成員函數(shù),它無返回值,以下表示

中,(A)是正確的

A)coidprint()const

B)constcoidprint()

C)viodconstprint()

86.關(guān)于new運(yùn)算符的以下描述中,(D)是錯(cuò)誤的.A)它可以用來動(dòng)態(tài)創(chuàng)立對(duì)象和對(duì)象數(shù)組B)使用它創(chuàng)立對(duì)象或?qū)ο髷?shù)組,可以使用運(yùn)算符DELETE刪除C)使用它創(chuàng)立對(duì)象時(shí)要調(diào)用構(gòu)造函數(shù)D)使用它調(diào)用對(duì)象數(shù)組時(shí)不E)許指F)定初始值87.以下關(guān)于構(gòu)造函數(shù)的描述中,錯(cuò)誤的是(C)A)構(gòu)造函數(shù)可以設(shè)置默認(rèn)參數(shù)B)構(gòu)造函數(shù)在說明類變量時(shí)自動(dòng)執(zhí)行C)構(gòu)造函數(shù)可以對(duì)靜態(tài)數(shù)據(jù)成員進(jìn)行初始化D)夠找函數(shù)可以重載88.對(duì)于類A,語句VOID(A::*P)(VOID);說明(A)A)P是一個(gè)指B)向類成員函數(shù)的指C)針D)P是類A的一個(gè)成員E)P是類A的一個(gè)對(duì)象F)P是一個(gè)指G)向類對(duì)象的指H)針89.運(yùn)算符delete刪除一個(gè)動(dòng)態(tài)對(duì)象時(shí)(C)A)首先為該動(dòng)態(tài)對(duì)象調(diào)用構(gòu)造函數(shù),在釋放其占用的內(nèi)存B)首先釋放該動(dòng)態(tài)對(duì)象占用的內(nèi)存,在為其調(diào)用構(gòu)造函數(shù)C)首先為該動(dòng)態(tài)對(duì)象調(diào)用析構(gòu)函數(shù),在釋放其占用的內(nèi)存D)首先釋放動(dòng)態(tài)對(duì)象占用的內(nèi)存,在為其調(diào)用析構(gòu)函數(shù)

清華大學(xué)出版社譚浩強(qiáng)

B)一定使用靜態(tài)聯(lián)編C)必需使用動(dòng)態(tài)聯(lián)編D)不E)一定使用動(dòng)態(tài)聯(lián)編11.若類A和類B的定義如下:

第四、五章習(xí)題一選擇題

1.在C++中的類有兩種方法:一種是類的實(shí)例化,即生成類的對(duì)

象,并參與系統(tǒng)的運(yùn)行;另一種是通過______B________,派生出

新的類。

A)復(fù)用

C)繼承

D)單繼承

E)多繼承

5.下面關(guān)于純虛函數(shù)和抽象類的描述中,6._____B_____是錯(cuò)誤

的。

A)純虛函數(shù)是一種特別的虛函數(shù),B)它沒有具體意義

C)一個(gè)基類中說明有純虛函數(shù),D)該基類的派生類一定不E)再

是抽象類

F)抽象類只能作為基類來使用,G)其純虛函數(shù)的定義由派生類

給出

H)抽象類是指I)具有純虛函數(shù)的類

7.繼承具有_____B_____,即當(dāng)基類本身也是某一個(gè)類的派生類

時(shí),底層的派生類也會(huì)自動(dòng)繼承間接基類的成員。

A)規(guī)律性

B)傳遞性

C)重復(fù)性

E)多樣性

10.對(duì)虛函數(shù)的調(diào)用____D______。

classA{inti,j;public:voidget();};classB:A//默認(rèn)為私有派生{intk;public;voidmake();};voidB::make(){k=i*j;}則上述定義中,_____D_____是非法的表達(dá)式。A)voidget();B)intk;D)voidmake();D)k=i*j;6.以下描述中,_____D_____是抽象類的特性。A)可以說明虛函數(shù)B)可以定義友元函數(shù)C)可以進(jìn)行構(gòu)造函數(shù)重載D)不能說明其對(duì)象7.在多繼承中,公有私生和私有派生對(duì)于基類成員的派生類中的

清華大學(xué)出版社譚浩強(qiáng)

A)完全一致

B)完全不同C)派生類是基類定義的延續(xù)D)派生類是基類的組合

C)部分一致,部分不同

D)以上都不對(duì)

8.____A______是一個(gè)在基類中說明虛函數(shù),它在該基類中沒有定

義,但要求任何派生類中的可訪問性的規(guī)定是一致的。

A)純虛函數(shù)

B)虛析構(gòu)函數(shù)

C)虛構(gòu)造函數(shù)

D)靜態(tài)成員函數(shù)

9.以下對(duì)派生類的描述中,_____D_____是錯(cuò)誤的。

A)一個(gè)派生類可以作另一個(gè)派生類的基類

B)派生類至少有一個(gè)基類

C)派生類的成員除了它自己的成員外,包含了它的基類的成員

D)派生類中繼承的基類成員的訪問權(quán)限到派生類保持不變

10.實(shí)現(xiàn)運(yùn)行時(shí)的多態(tài)性要使用_____D_____。

A)構(gòu)造函數(shù)

B)析構(gòu)函數(shù)

C)重載函數(shù)

D)虛函數(shù)

11.派生類的對(duì)象對(duì)它的基類成員中_____A_____是可以訪問的。

A)公有繼承的公有成員

B)公有繼承的私有成員

C)公有繼承的保護(hù)成員

D)私有繼承的公有成員

12.關(guān)于函數(shù)的描述中,_____C_____是正確的。

A)派生類的虛函數(shù)與基類的虛函數(shù)具有不同的參數(shù)個(gè)數(shù)和類型

B)基類中說明白虛函數(shù)后,派生類中其對(duì)應(yīng)的函數(shù)一定要說明為

虛函數(shù)

C)虛函數(shù)是一個(gè)成員函數(shù)

D)虛函數(shù)是一個(gè)static類型的成員函數(shù)、

13.對(duì)基類和派生類的關(guān)系描述中,____B______是錯(cuò)誤的。

A)派生類是基類的具體化

14.關(guān)于動(dòng)態(tài)聯(lián)編的以下表達(dá)中,______D____是錯(cuò)誤的。A)動(dòng)態(tài)聯(lián)編是以虛函數(shù)為基礎(chǔ)的B)動(dòng)態(tài)聯(lián)編調(diào)用虛函數(shù)操作是指向?qū)ο蟮闹羔樆蛞肅)動(dòng)態(tài)聯(lián)編是在運(yùn)行時(shí)確定所調(diào)用的函數(shù)代碼的D)動(dòng)態(tài)聯(lián)編是在編譯時(shí)確定操作函數(shù)的15.派生類的構(gòu)造函數(shù)的成員初始化列表中,不能包含____C______。A)基類的構(gòu)造函數(shù)B)派生類中子對(duì)象的初始化C)基類的子對(duì)象初始化D)派生類中一般數(shù)據(jù)成員的初始化16.假使一個(gè)類至少有一個(gè)純虛函數(shù),那么就稱該類為____A______。A)抽象類B)派生類C)純基類D)以上都不對(duì)17.設(shè)置虛基類的目的是_____B_____。A)簡(jiǎn)化程序B)消除二義性C)提高運(yùn)行效率D)減少目標(biāo)代碼18.在下面程序中,編譯時(shí)出現(xiàn)的錯(cuò)誤是____C______。classA1){public;2)A(){func();3)}virtualvoidfunc()=0;4)

清華大學(xué)出版社譚浩強(qiáng)

A)(1)

B)(2)

C)(3)

D)(4)

19.關(guān)于多繼承二義性的描述中,錯(cuò)誤的是______C____。

A)一個(gè)派生類的基類中都有某個(gè)同名成員,在派生類中對(duì)這個(gè)成

員的訪問可能出現(xiàn)二義性

B)解決二義性的最常用的方法是對(duì)成員名的限定法

C)基類和派生類同時(shí)出現(xiàn)的同名函數(shù),也存在二義性問題

F)一個(gè)派生類是從兩個(gè)基類派生出來的,G)而H)這兩個(gè)基類

又有一個(gè)共同I)的基類,J)對(duì)該基類成員進(jìn)行訪問時(shí),K)可

能出現(xiàn)二義性

20.用于類中虛成員函數(shù)說明的關(guān)鍵字(A)

A.virtualB.publicC.protectedD.private

21.以下對(duì)派生類的描述中,錯(cuò)誤的是(D)

A.派生類的缺省繼承方式是PRIVATE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論