![C++考試題庫及答案精簡_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/1def7946-53d0-467e-aa0a-c19cb204632c/1def7946-53d0-467e-aa0a-c19cb204632c1.gif)
![C++考試題庫及答案精簡_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/1def7946-53d0-467e-aa0a-c19cb204632c/1def7946-53d0-467e-aa0a-c19cb204632c2.gif)
![C++考試題庫及答案精簡_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/1def7946-53d0-467e-aa0a-c19cb204632c/1def7946-53d0-467e-aa0a-c19cb204632c3.gif)
![C++考試題庫及答案精簡_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/1def7946-53d0-467e-aa0a-c19cb204632c/1def7946-53d0-467e-aa0a-c19cb204632c4.gif)
![C++考試題庫及答案精簡_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/1def7946-53d0-467e-aa0a-c19cb204632c/1def7946-53d0-467e-aa0a-c19cb204632c5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、C+期末考試題庫一、單選題:1 .能作為C+程序的基本單位是(C)。A.字符 B.語句 C.函數(shù) D.源程序文件2 .程序中主函數(shù)的名字為(A )oA. main B. MAIN C. Main D.任意標(biāo)識符3 .關(guān)于C+與C語言的關(guān)系的描述中,(D)是錯誤的。A. C語言是C+的一個子集; B. C語言與C+是兼容的;C. C+對C語言進(jìn)行了一些改進(jìn);D. C+和C語言都是面向?qū)ο蟮? .可用作C+語言用戶標(biāo)識符的一組標(biāo)識符是(B)oA. void define +WORDB. a3_b3_123 YNC. for -abc CaseD. 2a DO sizeof5 .存儲以下數(shù)據(jù),占用存
2、儲字節(jié)最多的是(D)oA.O B.'O' C. "0" D.6 .設(shè)int a=12;則執(zhí)行完語句a+=a*a;后,a的值是(C)。A. 12 B. 144 C. 156 D. 2887 .假設(shè)在程序中a、b、c均被定義成整型,所賦的值都大于1,則下列能正確表示代數(shù)式L的表達(dá)式是(D),abcA. a*b*c B. l/(a*b*c) C. l/a/b/(float)c D. a/b/c8 .以下說法中正確的是(B).A. C+程序總是從第一個定義的函數(shù)開始執(zhí)行B. C+程序總是從main函數(shù)開始執(zhí)行C. C+函數(shù)必須有返回值,否則不能使用函數(shù)D. C+程序
3、中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個程序文件中9 .下面有關(guān)構(gòu)造函數(shù)的描述中,正確的是(B )0A.構(gòu)造函數(shù)可以帶有返回值B.構(gòu)造函數(shù)的名字與類名完全相同C.構(gòu)造函數(shù)必須帶有參數(shù)D.構(gòu)造函數(shù)必須定義,不能缺省.在聲明類時,下面的說法正確的是()oA.可以在類的聲明中給數(shù)據(jù)成員賦初值B.數(shù)據(jù)成員的數(shù)據(jù)類型可以是registerC. private, public, protected可以按任意順序出現(xiàn)D.沒有用private, public, protected定義的數(shù)據(jù)成員是公有成員11.在下而有關(guān)析構(gòu)函數(shù)特征的描述中,正確的是(A )oA. 一個類可以有多個析構(gòu)函數(shù)C.析構(gòu)函數(shù)不能指定返回類
4、型12.構(gòu)造函數(shù)是在(B )時被執(zhí)行的。A.程序編譯B.創(chuàng)建對象B.析構(gòu)函數(shù)與類名完全相同D.析構(gòu)函數(shù)可以有一個或多個參數(shù)C.創(chuàng)建類D.程序裝入內(nèi)存13.下面有關(guān)靜態(tài)成員函數(shù)的描述中,正確的是(B )A.在靜態(tài)成員函數(shù)中可以使用this指針B.在建立對象前,就可以為靜態(tài)數(shù)據(jù)成員賦值C.靜態(tài)成員函數(shù)在類外定義是,要用static前綴D.靜態(tài)成員函數(shù)只能在類外定義14 .下面有關(guān)友員函數(shù)的描述中,真確的說法是(A )A.友員函數(shù)是獨立于當(dāng)前類的外部函數(shù)8. 一個友員函數(shù)不可以同時定義為兩個類的友員函數(shù)C.友員函數(shù)必須在類的外部進(jìn)行定義D.在類的外部定義友員函數(shù)時必須加上friend關(guān)鍵字B.加強(qiáng)類
5、的封裝D.增加成員函數(shù)的種類B.提高程序的運行效率D.實現(xiàn)數(shù)據(jù)的隱藏15 .友員的作用之一是(A ) A.提高程序的運行效率 C.實現(xiàn)數(shù)據(jù)的隱蔽性16 .使用派生類的主要原因是(A A.提高代碼的可重用性 C .加強(qiáng)類的封裝性".在C+中繼承方式有幾中(A. 1B. 2C. 3D.418 .假設(shè)已經(jīng)定義好了類student,現(xiàn)在要定義類derived,它是從student私有派生的,則定 義類derived的正確寫法是( D )A. class derived : : student privateB. class derived : : student public C. clas
6、s derived : : public student D. class derived : : private student19 .派生類的對象對它的基類成員中(C)是可以訪問的。A ,公有繼承的公有成員;B ,公有繼承的私有成員;C ,公有繼承的保護(hù)成員;D.私有繼承的公有成員。20 .類中定義的成員默認(rèn)為(A )訪問屬性。A. publicB. privateC. protected D. friend21 .下列存儲類標(biāo)識符中,要求通過函數(shù)來實現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速 度,選用(A )合適。A.內(nèi)聯(lián)函數(shù); B.重載函數(shù); C.遞歸調(diào)用:D.嵌套調(diào)用。+對C語言作了很
7、多改進(jìn),下列描述中(D)使得C語言發(fā)生了質(zhì)變,從而向過程變成了面 向?qū)ο?。A.增加了一些新的運算符:B.允許函數(shù)重載,并允許設(shè)置缺省參數(shù):C.規(guī)定函數(shù)說明必須用原型:D.引進(jìn)了類和對象的概念:23 .按照標(biāo)識符的要求,(A)符號不能組成標(biāo)識符。D.數(shù)字字符A.連接符B.下劃線C.大小寫字母24 .下列變量名中,(A )是合法的。ACHINABbyte-sizeC doubleD A+a25 .下列各種函數(shù)中,(C)不是類的成員函數(shù)。A構(gòu)造函數(shù)B析構(gòu)函數(shù)C友元函數(shù) D拷貝構(gòu)造函數(shù)26 .下列(A )是正確的語句。A ; B a=17C x+yD cout«"n"27
8、 .不能作為函數(shù)重載判斷的依據(jù)的是(B )A.返回類型B. const C.參數(shù)個數(shù)D.參數(shù)類型28 .通常,拷貝構(gòu)造函數(shù)的參數(shù)是(C )A.某個對象名B.某個對象的成員名C.某個對象的引用名D.某個對象的指針名29 .下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是(C )A類的不同對象有不同的靜態(tài)數(shù)據(jù)成員值B類的每個對象都有自己的靜態(tài)數(shù)據(jù)成員C靜態(tài)數(shù)據(jù)成員是類的所有對象共享的數(shù)據(jù)D靜態(tài)數(shù)據(jù)成員不能通過類的對象調(diào)用30 .假定AB為一個類,則執(zhí)行AB x;語句時將自動調(diào)用該類的(B)A.有參構(gòu)造函數(shù)B.無參構(gòu)造函數(shù)C.拷貝構(gòu)造函數(shù)D.賦值構(gòu)造函數(shù)+程序從上機(jī)到得到結(jié)果的幾個操作步驟依次是(B )。A.編
9、譯、編輯、連接、運行 B.編輯、編譯、連接、運行C.編譯、運行、編輯、連接 D.編輯、運行、編輯、連接32 .假定一條定義語句為"inta10L x, *p=a;",若要把數(shù)組a中下標(biāo)為3的元素值賦給x,則 不正確的語句為(AA. x=p3; B. x=*(a+3); C. x=a3;D. x=*p+3;33 .關(guān)于封裝,下列說法中不正確的是(D )。A.通過封裝,對象的全部屬性和操作結(jié)合在一起,形成一個整體B.通過封裝,一個對象的實現(xiàn)細(xì)行被盡可能地隱藏起來(不可見)C.通過封裝,每個對象都成為相對獨立的實體D.通過封裝,對象的屬性都是不可見的34 .預(yù)處理命令在程序中都是
10、以(B )符號開頭的。A. * B. # C. & D. 35 .存儲以下數(shù)據(jù),占用存儲字節(jié)最少的是(BA. 0 B. 'O' C. "0" D.36 .程序運行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應(yīng)使用(D )符號作為分隔 符。A.空格或逗號B.逗號或回車C.逗號或分號D.空格或回車37 .假定變量m定義為“int m=7;",則定義變量p的正確語句為(B )。A. int p=&m;B. int *p=&m;C. int &p=*m;D. int *p=m;38 .下面的哪個保留字不能作為函數(shù)的返回類型C
11、oA. voidB. intC. newD. long39 .采用重載函數(shù)的目的是(B )oA.實現(xiàn)共享B.減少空間C.提高速度D.使用方便,提高可讀性40 .假定AB為一個類,則(C )為該類的拷貝構(gòu)造函數(shù)的原型說明。A. AB(AB x); B. AB(int x); C. AB(AB& x); D. void AB(AB& x); 41、C+對C語言作了很多改進(jìn),下列描述中(D )使得C語言發(fā)生了質(zhì)變,從面向過程 變成了面向?qū)ο蟆?A、增加了一些新的運算符;B、允許函數(shù)重載,并允許設(shè)置缺省參數(shù);C、規(guī)定函數(shù)說明必須用原型:D、引進(jìn)了類和對象的概念; 42、所謂數(shù)據(jù)封裝就是
12、將一組數(shù)據(jù)和與這組數(shù)據(jù)有關(guān)操作組裝在一起,形成一個實體,這 實體也就是(A)。A.類B.對象C.函數(shù)體D.數(shù)據(jù)塊43、關(guān)于new運算符的下列描述中,(C )是錯誤的。 A、它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組; B、使用它創(chuàng)建的對象或?qū)ο髷?shù)組可以使用運算符delete刪除: C、使用它創(chuàng)建對象時要調(diào)用構(gòu)造函數(shù): D、使用它創(chuàng)建對象數(shù)組時必須指定初始值; 44、 (D )不是構(gòu)造函數(shù)的特征。A、構(gòu)造函數(shù)的函數(shù)名與類名相同:B、構(gòu)造函數(shù)可以重載:C、構(gòu)造函數(shù)可以設(shè)置缺省參數(shù);D、構(gòu)造函數(shù)必須指定類型說明。45、假定一個類的構(gòu)造函數(shù)為雙屁“用丫=*-力=2*丫-;,則執(zhí)行8*(3,5);語句后,和的值
13、分別為(C) A、3 和 5 B、5 和 3 C、3 和 15 D、20 和 5 46、關(guān)于成員函數(shù)特征的下列描述中,(A)是錯誤的。 A、成員函數(shù)一定是內(nèi)聯(lián)函數(shù);B、成員函數(shù)可以重載:C、成員函數(shù)可以設(shè)置缺省參數(shù)值;D、成員函數(shù)可以是靜態(tài)的:47、在公有繼承的情況下,基類成員在派生類中的訪問權(quán)限(B )。 A、受限制 B、保持不變 C、受保護(hù) D、不受保護(hù) 48、友元的作用是(A)oA、提高程序的運用效率:B、加強(qiáng)類的封裝性;C、實現(xiàn)數(shù)據(jù)的隱藏性;D、增加成員函數(shù)的種類:49、在C+中,關(guān)于下列設(shè)置缺省參數(shù)值的描述中,(B )是正確的。 A、不允許設(shè)置缺省參數(shù)值: B、在指定了缺省值的參數(shù)右
14、邊,不能出現(xiàn)沒有指定缺省值的參數(shù): C、只能在函數(shù)的定義性聲明中指定參數(shù)的缺省值; D、設(shè)置缺省參數(shù)值時,必須全部都設(shè)置: ) 50、關(guān)于delete運算符的下列描述中,(C)是錯誤的。 A、它必須用于new返回的指針: B、使用它刪除對象時要調(diào)用析構(gòu)函數(shù): C、對一個指針可以使用多次該運算符: D、指針名前只有一對方括號符號,不管所刪除數(shù)組的維數(shù)。51 const int *p說明不能修改(C)oA、p指針:B、p指針指向的變量;C、p指針指向的數(shù)據(jù)類型;D、上述A、B、C三者; e52、當(dāng)需要打開A盤上的以文件用于輸入時,則定義文件流對象的語句為(B).A、fstream fin( *A:
15、M ,1) B、ifstreamfin( 44 A: " ,ios:nocreate)C、ofstream fin( "A:" ) D、ifstream fin( "A:M ,ios:app) 53、派生類的對象對它的基類成員中(A )是可以訪問的。A、公有繼承的公有成員: B、公有繼承的私有成員:C、公有繼承的保護(hù)成員;D、私有繼承的公有成員;54、假定一個字符串的長度為n,則定義存儲該字符串的字符數(shù)組的長度至少為(C)。A n-1 B、n C、 n+1 D、n+255在 int a=3; *p=&a;中,*p 的值是(D)。A、變量a的地址值
16、 B、無意義C、變量p的地址值D、356、下列常量中,(D)不是字符常量。A、' 005'B、' n' C、' c' D、"a”57、在 int a=3,*p=&a;中,*p 的值是(D)。A)變量a的地址值B)無意義C)變量p的地址值D)3 58、以下4個選項中,不能看作一條語句的是(BA) if(b=O) m=l;n=2; B) a=O,b=O,c=O;C) if(a>0);D) ;< 59、(D )不是構(gòu)造函數(shù)的特征。A)構(gòu)造函數(shù)的函數(shù)名與類名相同B)構(gòu)造函數(shù)可以重載C)構(gòu)造函數(shù)可以設(shè)置缺省參數(shù) D)構(gòu)造函數(shù)必
17、須指定類型說明 60、以下程序段中與語句k=a>bl:0:功能等價的是(DA) if(a>b) k=l;B) if(a>b) k=0C) if(a>b) k=l;D) if(a<b) k=0;else k=0; else k=l;61、下列常量中,(D)不是字符常量。A)' '005'B)f 'n'C) c'D) "a" 62、表示“x大于1而小于10”的邏輯表達(dá)式是(B )。A) l<x<10B) x>l&&x<10C) !(x<=l|x>=1
18、0) D) x>l|x<1063、關(guān)于成員函數(shù)特征的下列描述中,(A)是錯誤的。A)成員函數(shù)一定是內(nèi)聯(lián)函數(shù)B)成員函數(shù)可以重載C)成員函數(shù)可以設(shè)置缺省參數(shù)值 D)成員函數(shù)可以是靜態(tài)的 64、有以下程序 #include <> void main() int i,s=0;for(i=l;i<10;i+=2) s+=i; cout«s;程序執(zhí)行后的輸出結(jié)果是(C )0A)自然數(shù)19的累加和B)自然數(shù)110的累加和C)自然數(shù)19中的奇數(shù)之和D)自然數(shù)110中的偶數(shù)之和65、設(shè)有定義:intn=0,*p=&n,*q=&p;則以下選項中,正確的賦值
19、語句是(D)。A) p=l; B) *q=2;C) q=p;D) *p=5;66、( A)能正確輸出結(jié)果:C+。A) char s="C+"cout«s«endl;B) char s3="C+"cout«s«endl;C) chars3='C7+7+70';cout«s«encll;D) char s3=,C,/+7+,;cout«s«endl;67、有以下程序段inta10=l/2/3,4,5,6,7,8,9,10,*p=a,b;b=p ;b中的值是(B)o
20、A) 5B) 6C) 8D) 968、有以下程序#include <> void main()char *P10="abc"/"aabdfg";,dcdbe","abbd";'cd"cout«p3«endl;)執(zhí)行后輸出結(jié)果是BA) dcdbeB) abbdC) abcD) abb69、下列靜態(tài)數(shù)據(jù)成員的特性中,(C )是錯誤的。A)說明靜態(tài)數(shù)據(jù)成員時前邊要加修飾符staticB)靜態(tài)數(shù)據(jù)成員要在類體外進(jìn)行初始化C)靜態(tài)數(shù)據(jù)成員不是所有對象所共用的D)引用靜態(tài)數(shù)據(jù)成員時,要在
21、其名稱前加類名和作用域運算符70、有以下語句struct Sint g;char h;T;則下而敘述中不正確的是(C )0A) S是結(jié)構(gòu)體名B)該結(jié)構(gòu)體包含2個成員C) S是struct類型的變量 D) T是struct S類型的變量71、派生類的對象對它的基類成員中(A)是可以訪問的。A)公有繼承的公有成員 1B)公有繼承的私有成員C)公有繼承的保護(hù)成員D)私有繼承的公有成員72、實現(xiàn)運行時的多態(tài)性用o DA、重載函數(shù)B、構(gòu)造函數(shù)C、析構(gòu)函數(shù)D、虛函數(shù)73 .下列變量名中,(A )是合法的。A. CHINA B. byte-size C. double D. A+a74 .在 intbH3=
22、l,3,2,4,5,6,0;b22的值是(D )。A. 0B. 2C.5D. 675 .下列各運算符中,(B)優(yōu)先級最高。A.+(雙目) B.* (單目) C. <= D. *= 76.下列for循環(huán)的次數(shù)為(B for(int i(0),x=0; !x&&i<=5;i+)A. 5 B. 6C. 1D.無限77 .下述關(guān)于break語句的描述中,(C )是正確的。A. break語句可用于循環(huán)體內(nèi),它將退出該重循環(huán)。 %B. break語句可用于開關(guān)語句中,它將退出開關(guān)語句。C. break語句可用于if體內(nèi),它將退出if語句。D. break語句在一個循環(huán)體內(nèi)可以
23、出現(xiàn)多次。78 .在一個被調(diào)用函數(shù)中,關(guān)于return語句使用的描述,(D )是錯誤的。A.被調(diào)用函數(shù)中可以不用return語句。B.被調(diào)用函數(shù)中可以使用多個return語句。C.被調(diào)用函數(shù)中,如果有返回值,就一定要有return語句。D.被調(diào)用函數(shù)中,一個return語句可返回多個值給調(diào)用函數(shù)。 *79.在C+中,關(guān)于下列設(shè)置參數(shù)默認(rèn)的描述中,(C )是正確的。A.不允許設(shè)置參數(shù)的默認(rèn)值。B.設(shè)置參數(shù)默認(rèn)值只能在定義函數(shù)時設(shè)置。C.設(shè)置參數(shù)默認(rèn)值時,應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的。D.設(shè)置參數(shù)默認(rèn)值時,應(yīng)該全部參數(shù)都設(shè)置。80 .下列存儲類標(biāo)識符中,要求通過函數(shù)來實現(xiàn)一種不太復(fù)雜的功能,并且
24、要求加快執(zhí)行速 度,選用(A )合適。A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸調(diào)用 D.嵌套調(diào)用81 .下列的各類函數(shù)中,(C )不是類的成員函數(shù)。A,構(gòu)造函數(shù)B.析構(gòu)函數(shù) C.友元函數(shù) D.拷貝初始化構(gòu)造函數(shù)82.A.C.(D)不是構(gòu)造函數(shù)的特征 構(gòu)造函數(shù)的函數(shù)名與類名相同 構(gòu)造函數(shù)可以設(shè)置缺省參數(shù)B. 構(gòu)造函數(shù)可以重載D.構(gòu)造函數(shù)必須指定類型說明83. fl(int)是類A的公有成員函數(shù),p是指向成員函數(shù)fl()的指針,采用(C)是正確的。A. p=flB. p=A:fl C. p=A:fl() D. p=fl()84.下列定義中,(A )是定義指向數(shù)組的指針pcA. int *pC. (int
25、*)p5 D. int*p85 .循環(huán)while(inti=O)i-:執(zhí)行次數(shù)是(A 工A.OB. 1C. 5D.無限86 .設(shè)intx:,則經(jīng)過(C )后,語句*px=O;可將x值置為0。A. int * px:B . int const * px=&x;C. int * const px=&x;D. const int * px=&x:87.設(shè) void fl(int * m, long & n); int a; long b:則以下調(diào)用合法的是(B )©A.fl(a, b);B.fl(&a, b);C.fl(a, &b):D.fl
26、(&a, &b)88 .關(guān)于對象概念的描述中,(A )是錯誤的。A.對象就是C語言中的結(jié)構(gòu)變量;B.對象代表著正在創(chuàng)建的系統(tǒng)中的一個實體;C.對象是一個狀態(tài)和操作(或方法)的封裝體;D.對象之間的信息傳遞是通過消息進(jìn)行的;89 .在下列double型常量表示中,(A )是錯誤的。A. E15; B. .35; C. 3E5; D. 3E-590 .下列給字符數(shù)組進(jìn)行初始化中,(A )是正確的。A. char sl ="12345abcd"B. char s23="xyz"C. char s3H3='a','x
27、9;,'y'D. char s423="xyz";,mnp"91 .對于int *pa5;的描述,(D )是正確的。A. pa是一個指向數(shù)組的指針,所指向的數(shù)組是5個int型元素;B. pa是一個指向某個數(shù)組中第5個元素的指針,該元素是int型變量;C. pa表示某個數(shù)組的第5個元素的值:D. pa是一個具有5個元素的指針數(shù)組,每個元素是一個int型指針: 92.下列各運算符中,(A )優(yōu)先級最低。 A. : B. |C. | |D. !=93 .下列for循環(huán)的循環(huán)體執(zhí)行次數(shù)為(Dforfint i(0)J(10);i=j=4;i+J-)A. 0
28、;B. 1;C. 4;D.無限;94 .下述關(guān)于開關(guān)語句的描述中,(A )是正確的。A.開關(guān)語句中default子句可以沒有,也可以有一個;B.開關(guān)語句中每個語句序列中必須有break語句;C.開關(guān)語句中default子句只能放在最后: D.開關(guān)語句中case子句后面的表達(dá)式可以是整形表達(dá)式。95 .下列存儲類標(biāo)識符中,(C )的可見性與存在性不一值。A.外部類: B.自動類;C.內(nèi)部靜態(tài)類; D.寄存器類。96 .下述靜態(tài)數(shù)據(jù)成員的特征中,(D)是錯誤的。A.說明靜態(tài)數(shù)據(jù)成員時前邊要加修飾符static;B.靜態(tài)數(shù)據(jù)成員要在類體外進(jìn)行初始化:C.引用靜態(tài)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員名前加類名
29、和作用域運算符: D.靜態(tài)數(shù)據(jù)成員不是所有對象所共用的。97. ( A)是析構(gòu)函數(shù)的特征。A. 一個類中只能定義一個析構(gòu)函數(shù);B.析構(gòu)函數(shù)與類名不同;C.析構(gòu)函數(shù)的定義只能在類體內(nèi);D.析構(gòu)函數(shù)可以有各個或多個參數(shù)。 ;98.已知:p是一個指向類A數(shù)據(jù)成員m的指針,A1是類A的一個對象。如果要給m賦值 為5, ( C )是正確的。A. =5;B. Al->p=5;C. A.*p=5;D. *=5;99.關(guān)于new運算符的下列描述中,(D)是錯的。A.它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組:B.使用它創(chuàng)建的對象或?qū)ο髷?shù)組可以使用運算符delete刪除;C.使用它創(chuàng)建對象時要調(diào)用構(gòu)造函數(shù);D.使用
30、它創(chuàng)建對象數(shù)組時必須指定初始值。100.派生類的構(gòu)造函數(shù)的成員初始化列中,不能包含(C )。A.基類的構(gòu)造函數(shù);B.派生類中子對象的初始化;C.基類的子對象初始化;D.派生類中一般數(shù)據(jù)成員的初始化10L派生類的對象對它的基類成員中(A)是可以訪問的。A.公有繼承的公有成員;B.公有繼承的私有成員;C.公有繼承的保護(hù)成員;D.私有繼承的公有成員。102 . C+類體系中,不能被派生類繼承的有(A)oA.構(gòu)造函數(shù)B.虛函數(shù)C.靜態(tài)成員函數(shù)D.賦值操作函數(shù)103 .下而標(biāo)識符中正確的是(AA. _abc B. 3ab C. int D. +ab104 .下列哪項(D >不是而向?qū)ο蟪绦蛟O(shè)計的主
31、要特征a.封裝b.繼承c.多態(tài)d.結(jié)構(gòu)105 .若有以下定義,則說法錯誤的是(D).int a=100,*p=&a;A.聲明變量p,其中*表示p是一個指針變量106 量p經(jīng)初始化,獲得變量a的地址C.變量p只可以指向一個整形變量D.變量p的值為100106.對數(shù)組名作函數(shù)的參數(shù),下而描述正確的是(B).A.數(shù)組名作函數(shù)的參數(shù),調(diào)用時將實參數(shù)組復(fù)制給形參數(shù)組。B.數(shù)組名作函數(shù)的參數(shù),主調(diào)函數(shù)和被調(diào)函數(shù)共用一段存儲單元。C,數(shù)組名作參數(shù)時,形參定義的數(shù)組長度不能省略。D.數(shù)組名作參數(shù),不能改變主調(diào)函數(shù)中的數(shù)據(jù)。107 .關(guān)于靜態(tài)成員的描述中,(B)是錯誤的。A. 靜態(tài)成員可分為靜態(tài)數(shù)據(jù)成員
32、和靜態(tài)成員函數(shù)。B. 靜態(tài)數(shù)據(jù)成員定義后必須在類體內(nèi)進(jìn)行初始化。C. 靜態(tài)數(shù)據(jù)成員初始化不使用其構(gòu)造函數(shù)。D. 靜態(tài)數(shù)據(jù)成員函數(shù)中不能直接引用非靜態(tài)成員。108 .下列關(guān)于構(gòu)造函數(shù)的描述中,錯誤的是(DA.構(gòu)造函數(shù)可以設(shè)置默認(rèn)的參數(shù)B.構(gòu)造函數(shù)在定義類對象的自動執(zhí)行C.構(gòu)造函數(shù)可以是內(nèi)聯(lián)函數(shù)D.構(gòu)造函數(shù)不可以重載109 .假設(shè)OneClass為一個類,則該類的拷貝初始化構(gòu)造函數(shù)的聲明語句為(CA. OneClass(OneClass p);B. OneClass& (OneClass p);)C. OneClass(OneClass & p);D. OneClass (OneC
33、lass *p);110.如果類A被說明成類B的友元,則(D )oA.類A的成員即類B的成員。B.類B的成員即類A的成員。C.類A的成員函數(shù)不得訪問類B的成員°D.類B不一定是類A的友元。111、關(guān)于對象和類的關(guān)系,說法正確的是(C )。A)同屬于一類的對象,具有相同的數(shù)據(jù)成員和成員函數(shù)。B)對象是具體,是類的對象,同其他變量一樣,先定義后使用。C)同一類的不同對象,其具有的操作可不同,具體的操作也不同。D)不同類的對象,可有相同的操作。112、下列關(guān)于C+函數(shù)的說明中正確的是(D )。A)內(nèi)聯(lián)函數(shù)就是定義在另一函數(shù)體內(nèi)部的函數(shù)。B)函數(shù)體的最后一條語句必須是RETURN語句。C)標(biāo)
34、準(zhǔn)C+要求在調(diào)用一個函數(shù)之前,必須先聲明其原型。D)編譯器會根據(jù)函數(shù)的返回值類型和參數(shù)表來區(qū)分函數(shù)的不同重載形式。113、下列關(guān)于虛函數(shù)的說明中,正確的是(BA)從虛基類繼承的函數(shù)都是虛函數(shù)。B)虛函數(shù)不得是靜態(tài)成員函數(shù)。C)只能通過指針和引用調(diào)用虛函數(shù)。D)抽象類中的成員函數(shù)都是虛函數(shù)。114、下列符號中可以用作C+標(biāo)識符的是(A )oA) -radius B) foobar C) elseD) 3room115.下列語句中錯誤的是(B )oA) const int buffer=256;B) const int int temp;C) const double * point;D) con
35、st double *rt=new double116、下列關(guān)于實參和形參說法錯誤的是(DA)實參可以是變量、常量、或表達(dá)式。B)實參與形參的類型必須一致,否則會發(fā)生“類型不匹配”的錯誤。C)實參對形參的數(shù)據(jù)傳遞是單向傳遞,調(diào)用結(jié)束后,實參單元被釋放。D)形參必須是變量。117.關(guān)于內(nèi)聯(lián)函數(shù)說法錯誤的是(CA)不是任何一個函數(shù)都可定義成內(nèi)聯(lián)函數(shù)。B)內(nèi)聯(lián)函數(shù)的函數(shù)體內(nèi)不能含有復(fù)雜的結(jié)構(gòu)控制語句。C)遞歸函數(shù)可以被用來作為內(nèi)聯(lián)函數(shù)。D)內(nèi)聯(lián)函數(shù)一般適合于只有15行語句的小函數(shù)。118,關(guān)于保護(hù)繼承的說法正確的是(D )。A)基類的公有成員、私有成員可被子類繼承下來,而且性質(zhì)不變。B)基類的公有成
36、員、私有成員可被子類繼承下來,而且性質(zhì)改變?yōu)楸Wo(hù)成員。C)基類的公有成員、私有成員可被子類繼承下來,而且性質(zhì)均改變?yōu)樗接谐蓡T。D)基類的公有成員、私有成員可被子類繼承下來,性質(zhì)不變,私有成員不被繼承。119.關(guān)于函數(shù)的返回值說法正確的是(AA)由return語句返回時,只帶回一值,其類型在函數(shù)定義時確定。B)其類型由調(diào)用表達(dá)式?jīng)Q定。Q函數(shù)可以沒有返回值,這時在函數(shù)定義,函數(shù)的類型說明就沒必要了。D)函數(shù)調(diào)用就要有返回值,否則調(diào)用就沒意義了。120、關(guān)于結(jié)構(gòu)化程序設(shè)計方法說法錯誤的是(DA)在數(shù)據(jù)處理過程中,采用的是自頂向下、分而治之的方法。B)將整個程序按功能劃分為幾個可獨立編程的子過程模塊。
37、C)以“對象"或“數(shù)據(jù)”為中心。D)數(shù)據(jù)和處理數(shù)據(jù)的過程代碼是分離的、相互獨立的實體。121、運算符重載是對已有的運算符賦予多重含義,因此(CA)可以對基本類型(如int類型)的數(shù)據(jù),重新定義“ + ”運算符的含義。B)可以改變一個已有運算符的優(yōu)先級和操作數(shù)個數(shù)。C)只能重載C+中己經(jīng)有的運算符,不能定義新運算符。D) C+中已經(jīng)有的所有運算符都可以重載。122、關(guān)于C+程序說法不正確的是(DA) C+程序由函數(shù)構(gòu)成,但只有一個main。函數(shù)。B) C+程序中main()函數(shù)可以在程序的任何位置。C) C+程序由main()函數(shù)開始執(zhí)行,由main。結(jié)束執(zhí)行。D) main()都是沒
38、有參數(shù)的。123、下面有關(guān)重載函數(shù)的說法中正確的是(C )。A)重載函數(shù)必須具有不同的返回值類型。B)重載函數(shù)形參個數(shù)必須不同。C)重載函數(shù)必須有不同的形參列表。D)重載函數(shù)名可以不同。二、填空:L C+語言的頭文件與源程序文件擴(kuò)展名分別是(.h)和(.cpp2 .在C+程序中使用基本輸入與輸出流時需要包含的頭文件名是(iostream3 .在C+語言中,惟一的一個三目運算運算符是(:)。4 . C+中當(dāng)一個函數(shù)無返回值時,則函數(shù)的類型是(void )o5 . 一個類中可以有(多)個構(gòu)造函數(shù),只能有(一)個析構(gòu)函數(shù)。6 .一般情況下,按照面向?qū)ο蟮囊?,把類中的?shù)據(jù)成員(屬性)定義為(私有)權(quán)
39、限, 而把成員函數(shù)(方法)定義為(公有)權(quán)限.7 .在定義類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的(構(gòu)造 )函數(shù)初始化對象自 身.在撤銷類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的(析構(gòu) )函數(shù).8 .類繼承中,缺省的繼承方式是(私有繼承).9 .在C+語言中,用轉(zhuǎn)義字符序列('n*)或操縱符(endl )表示輸出一個換行符。10 .表達(dá)式a=a + l表示成增量表達(dá)式為(+a11 .當(dāng)不需要函數(shù)返回任何值時,則應(yīng)把該函數(shù)類型定義為(void )。12 .用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出流對象是(cout)o,用于從鍵盤上為變量輸人值的 標(biāo)準(zhǔn)輸人流對象是(cin13、變量分為全局和局部兩種,(全局變
40、量默認(rèn)初始化為0 )。變量沒有賦初值時,其 值是不確定的。14、假定類AB中有一個公用屬性的靜態(tài)數(shù)據(jù)成員bb,在類外不通過對象名訪問該成員 bb的寫法為(AB: :bb )»15、類的成員分為數(shù)據(jù)成員_和_成員函數(shù) 16、一個_類_和一對象的關(guān)系,正如基本數(shù)據(jù)類型與該類型的變量一樣,如intx;。17、對一個類中的數(shù)據(jù)成員的初始化可以通過構(gòu)造函數(shù)中的一賦值_實現(xiàn),也可以通過構(gòu)造 函數(shù)中的_初始化列表實現(xiàn)。18、類有兩種用法:一種是一定義對象即生成類的對象:另一種是通過一派生派生 出新的類。19、C+語言提供的多態(tài)機(jī)制允許一個派生類繼承多個基類,即使這些基類是相互無關(guān) 的。20、聲明虛
41、函數(shù)的方法是在基類中的成員函數(shù)原型前加上關(guān)鍵字_virtual_。21、如果一個類中有一個或多個純虛函數(shù),則這個類稱為_虛基類22、靜態(tài)數(shù)據(jù)成員在定義或說明時,前面要加上關(guān)鍵字_static_。23、如果成員函數(shù)不需要訪問類的非靜態(tài)_成員,則可以把它聲明為靜態(tài)成員函數(shù)。 24、友元可以是_全局函數(shù)也可以是其他類的成員函數(shù)25、若需要把一個函數(shù)“void定義為一個類A的友元函數(shù),則應(yīng)在類A的定義中加入一條語句:_friend void fun ( ); _。26、運算符函數(shù)中的關(guān)鍵字是_operator_,它和一運算符起組成該運算符函數(shù)的函數(shù) 名。27、類中運算符重載一般采用兩種形式:_成員函數(shù)
42、_和_友元函數(shù)28、面向?qū)ο蟪绦蛟O(shè)計的3大機(jī)制為:_封裝性_、_繼承性_和_多態(tài)性2、類的訪 問權(quán)限有_public_、_private_和_protected_三種。29、構(gòu)造函數(shù)是一對象被創(chuàng)建時自動執(zhí)行,對象消失時自動執(zhí)行的成員函數(shù)稱為析構(gòu)函 數(shù)_。30、如果類A繼承了類B,則類A稱為基類類B稱為一派生類31、如果一個特定的類型S當(dāng)且僅當(dāng)它提供了類型T的行為時,則稱類型S是類型T的 子類型32、在類定義中,將_=0置于虛函數(shù)的函數(shù)原型的末尾可以聲明該函數(shù)為純虛函數(shù)。33、類的靜態(tài)成員分為一靜態(tài)數(shù)據(jù)成員_和_靜態(tài)成員函數(shù)34、友元函數(shù)的聲明可以放在類的私有一部分,也可以放在類的一共有一部分,
43、它們是沒 有區(qū)別的。35、如果說類B是類A的友元類,則類B的所有成員函數(shù)都是類A的成員函數(shù)36、設(shè)a和b是兩個整型變量,我們用a+b的形式求這兩個變量的和:設(shè)c和d為浮點型變 量,我們用c+d的形式求這兩個變量的和。顯然運算符“ + ”具有不同的用途,這是運算 符重載的例子。37、對于雙目運算符,若重載為類的成員函數(shù),有1_個參數(shù):若重載為友元函數(shù),則有一 2個參數(shù)。38、當(dāng)建立個新的對象,程序自動調(diào)用該類的構(gòu)造函數(shù)。39、在C+中有二種參數(shù)傳遞方式:傳值和引用。(40、模板對處理數(shù)據(jù)的類型的要求不同可以分為兩種類型:函數(shù)模板和類模板41、異常是通過檢查(try) _、_拋出(throw) _
44、和_捕捉(catch) _來實現(xiàn)的。42、虛函數(shù)實現(xiàn)了 C+的多態(tài)_次制,類實現(xiàn)了 C+的封裝機(jī)制。43、面向?qū)ο蟪绦蛟O(shè)計的繼承機(jī)制提供了重復(fù)利用程序資源的一種途徑。44、C+語言程序設(shè)計的三種基本結(jié)構(gòu)是:一順序結(jié)構(gòu)一、選擇結(jié)構(gòu)一、_循環(huán)結(jié)構(gòu).45、為了避免嵌套的條件語句if-else的二義性,C+語言規(guī)定else與_if_配對使用。46、定義函數(shù)時,在函數(shù)的類型前加上修飾詞inline,指明將該函數(shù)定義為內(nèi)聯(lián)函 數(shù)。47、有說明語句:*p;則*p+運算首先訪問*p,然后使_p的值加1。48、執(zhí)行int*p=newint操作,可以得到一個動態(tài)分配整型對象的_指針。49、有說明語句:int*p:
45、則性)+運算首先訪問 *p,然后使_*p的值加1。50 . C+目標(biāo)程序經(jīng)編譯鏈接后生成擴(kuò)展名為exe的可執(zhí)行程序文件。51 . 16位計算機(jī)中整型占 2 個字節(jié)存儲空間。52 .要在屏幕上顯示"Hello, world!"應(yīng)執(zhí)行語句 cout«"Hello, world!H;。53 .表達(dá)式8&3的結(jié)果是0 o54 .作為語句的函數(shù)調(diào)用是通過函數(shù)的副作用來體現(xiàn)的。55 . 執(zhí)行 if (x>=0| |x<=0) cout«,abcd,1: else cout«,lwxyz,":屏幕上顯示的是 abed。
46、956 .設(shè)一維整型數(shù)組data已進(jìn)行了初始化,則其元素個數(shù)可由操作符sizeof通過表達(dá)式 sizeof(data) / sizeof(int)計算出來,57 .若一全局變量只允許本程序文件中的函數(shù)使用,則定義它時應(yīng)加上修飾符static58 .設(shè)有int w3;,pw是與數(shù)組名w等價的數(shù)組指針,則pw應(yīng)初始化為 int*pw59 .要使引用pr代表變量char * p;,則pr應(yīng)初始化為 char*& pr = p;60 .在C+中封裝性、繼承性和 多態(tài)性61 .假設(shè)int a=l» b=2;則表達(dá)式a+-b的值為_2。62 . C+語言支持的兩種多態(tài)性分別是編譯時的多態(tài)
47、性和_運行時的多態(tài)性。63 .設(shè)有如下程序結(jié)構(gòu):class Box;void main()Box A,B,C;該程序運行時調(diào)用3_次構(gòu)造函數(shù);調(diào)用 3_次析構(gòu)函數(shù)。64 .目前,有兩種重要的程序設(shè)計方法,分別是:而向過程_和面向?qū)ο蟆?5 .函數(shù)重載時要求同名函數(shù)的一參數(shù)個數(shù)或參數(shù)類型_不同,否則無法確定是哪個函數(shù)。66 .靜態(tài)數(shù)據(jù)成員是類的所有對象中的共享成員,而非靜態(tài)數(shù)據(jù)成員是屬于個 具體對象的。67 .設(shè)A為test類的對象且賦有初值,則語句test B(A);表示將對象A復(fù)制給對象B 。68 .而向?qū)ο蟪绦蛟O(shè)計方法中的每個對象都具有屬性和方法兩方面的特征。69 .類的靜態(tài)成員是一的所有
48、對象中共享的成員,不是一某個對象的成員,靜態(tài)成員在 一類的聲明中加行引用性說明,在真文件作用應(yīng)的其他地方進(jìn)行定義性說明。70 . “封裝”指的是一將有關(guān)的數(shù)據(jù)和琬作代碼封裝在一個對象中,形成一個基本單 位,各個對索之間相互獨立,互不干擾,且將對象中某些部分對外隱藏71 .可以讓新類繼承已定義的類的數(shù)據(jù)成員_和_成員函數(shù)這個新類稱為繼承原 來的類稱為基類新類可以從一個類而派京,這叫辛繼承也可以從多個類中 派生,稱為多重繼承_。72 .指針類型變量用于存儲另一變量的地址在內(nèi)存中它占有個存儲單元。73 .類有三種繼承方式,分別是:公有繼承_保護(hù)繼承_、私有繼承二四、寫出程序運行結(jié)果1、#includ
49、e <>int a口=2,4,6,8,10;int &index(int i) return ai;)void main()|int i;index(3)=12;for(i=0;i<=4;i+) cout«ai«,' n;結(jié)果 2 4 6 12 102、#include <> void f(int *m,int n)(int temp;temp=*m;*m=n;n=temp;)void main()(int a=5,b=10;f(&a, b);cout«a«M N«b«endl;
50、)10 103、#include <>int i=15;void main() |int i;i=100;:i=i+l;cout«" *i«encll;()1014、#include <>class toy|public:toy(int q, int p)(quan = q;price = p;)int get_quan()return quan;int get_price()return price;private:int quan, price;); main()toy op32= toy(10,20),toy(30,48), toy(
51、50,68),toy(70,80), toy(90,16),toy(llJ20),int i;for (i=0;i<3;i+) (cout<<opi0get_quan()<<"j;cout<<opi0get_price()vv"n"cout<<opil.get_quan()<<“J;cout<vopil.gRt_price()<<"n”;)cout«,n'1;return 0;)10,2030,4850,6870,8090,16114205、#inclu
52、de <>jclass example(public:example(int n)i=n;cout«"Constructingn H;example()(cout «,Destructingn,")int get_i()(return i;private: int i;);int sqr_itexample o)(return ()* ();) main()I | example x(10); cout«()«endl; cout«sqrjt(x)«endl; return 0;)Constructin
53、g 10ADestructing 100 10Destructing6、#include <> class Testprivate:int x;public:Test() cout« ”構(gòu)造函數(shù)被執(zhí)行” <<endl;x=0;)Test() cout<< “ 析構(gòu)函數(shù)被執(zhí)行" «endl;void print() cout<</x=/,«x«endl;);void main()Test objl,obj2;0;0;()構(gòu)造函數(shù)被執(zhí)行構(gòu)造函數(shù)被執(zhí)行x=0x=0析構(gòu)函數(shù)被執(zhí)行析構(gòu)函數(shù)被執(zhí)行7、#inc
54、lude <>class A(public:A(int *s) cout«s«endl;);class B:public Apublic:B(char *slzchar *s2):A(sl) (cout«s2«endl;);class C:public Apublic:C(char *sl,char *s2):A(sl)cout«s2«endl;);class D:public B,C|public:D(char *sl/char *s2,char *s3,char *s4):B(sl,s2),C(s3,s4)(cout&
55、#171;s4«endl;);void main()D d ("class ATclass Bclass CTclass D);)class Aclass Bclass Cclass Dclass D8、#include <>class Basepublic:virtual void disp() cout«/zbase classz/«endl; );class Derivekpublic Base|public:void disp() cout'derivel class”<<endl;);class Derive2:
56、public Basepublic:void disp() cout«z,derive2 class"«endl;);void main()Base *p;Base b;Derivel dl;Derive2 d2;p=&b;p->disp();p=&dl;P->disp();p=&d2;p->disp();) base class derivel class derive2 classA9、#include <> class Sampleprivate:int x;static int y;public:Sample(int a);void print(););Sample: Sample(int a) (x=a;y+;)void Sample:print()cout<</x=/«x«/y=/,«y«endl;)int Sample:y=25;void main() Sample sl(5);Sample s2(10);0;0;) x=5,y=27x=10zy=2710 x #include <>class Sampleprivate:int x;p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023八年級數(shù)學(xué)上冊 第2章 三角形2.5 全等三角形第5課時 SSS說課稿 (新版)湘教版
- 2024年九年級語文上冊 第五單元 第17課《草房子》說課稿 鄂教版
- 25《慢性子裁縫和急性子顧客》(說課稿)-2023-2024學(xué)年統(tǒng)編版語文三年級下冊
- 2024-2025學(xué)年高中物理 第一章 電磁感應(yīng) 4 楞次定律說課稿 教科版選修3-2
- 2025深圳市途安汽車租賃有限公司租賃合同
- 2025地區(qū)代理合同樣式詳細(xì)版
- 2024年四年級英語下冊 Unit 5 What will you do this weekend Lesson 27說課稿 人教精通版(三起)
- 2023八年級生物下冊 第七單元 生物圈中生命的延續(xù)和發(fā)展第一章 生物的生殖和發(fā)育第2節(jié) 昆蟲的生殖和發(fā)育說課稿 (新版)新人教版
- 個人消防安裝合同范例
- 俄羅斯電梯采購合同范例
- 關(guān)于防范遏制礦山領(lǐng)域重特大生產(chǎn)安全事故的硬措施課件
- 2025年中國成都餐飲業(yè)市場運營態(tài)勢分析及投資前景預(yù)測報告
- 2024年xx縣第三小學(xué)安全工作管理制度匯編
- 項目合作備忘錄范文
- 婦產(chǎn)科醫(yī)生個人年終述職報告課件
- 《費曼學(xué)習(xí)法》讀后感
- 趣味成語課程設(shè)計
- 鋼筋焊接工藝性試驗方案
- 2024年四川省涼山州中考物理適應(yīng)性試卷(附答案解析)
- 幼兒園師資培訓(xùn)課件【區(qū)域進(jìn)階】科學(xué)區(qū)各年齡段目標(biāo)制定與投放材料:區(qū)域材料玩出新高度課件
- 人教版初中數(shù)學(xué)同步講義八年級上冊專題提升02 解分式方程與分式方程的實際應(yīng)用(30題)(原卷版)
評論
0/150
提交評論