精選大學(xué)C++-期末考試題庫(kù)_第1頁(yè)
精選大學(xué)C++-期末考試題庫(kù)_第2頁(yè)
精選大學(xué)C++-期末考試題庫(kù)_第3頁(yè)
精選大學(xué)C++-期末考試題庫(kù)_第4頁(yè)
精選大學(xué)C++-期末考試題庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩104頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、大學(xué)C+-期末考試題庫(kù)C+程序設(shè)計(jì)試卷 一、單項(xiàng)選擇題:1. 能作為C+程序的根本單位是( )。 A. 字符 B. 語(yǔ)句 C. 函數(shù) D. 源程序文件2. 程序中主函數(shù)的名字為 。 A. main B. MAIN C. Main D. 任意標(biāo)識(shí)符3. 關(guān)于C+與C語(yǔ)言的關(guān)系的描述中, 是錯(cuò)誤的。 A. C語(yǔ)言是C+的一個(gè)子集; B. C語(yǔ)言與C+是兼容的; C. C+對(duì)C語(yǔ)言進(jìn)行了一些改良;D. C+和C語(yǔ)言都是面向?qū)ο蟮?. 可用作C+語(yǔ)言用戶(hù)標(biāo)識(shí)符的一組標(biāo)識(shí)符是( )。A. void define +WORD B. a3_b3 _123 YNC. for -abc Case D. 2a D

2、O sizeof5. 存儲(chǔ)以下數(shù)據(jù),占用存儲(chǔ)字節(jié)最多的是 。 A. 0 B. 0 C. “0 D. 0.06. 設(shè)int a=12;那么執(zhí)行完語(yǔ)句a+=a*a;后,a的值是( )。 A. 12 B. 144 C. 156 D. 2887. 假設(shè)在程序中 a、b、c 均被定義成整型,所賦的值都大于1,那么以下能正確表示代數(shù)式的表達(dá)式是( )。A. 1.0/a*b*c B. 1/(a*b*c) C. 1/a/b/(float)c D. 1.0/a/b/c8. 以下說(shuō)法中正確的選項(xiàng)是 。 A. C+程序總是從第一個(gè)定義的函數(shù)開(kāi)始執(zhí)行 B. C+程序總是從main函數(shù)開(kāi)始執(zhí)行 C. C+函數(shù)必須有返回

3、值,否那么不能使用函數(shù) D. C+程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)程序文件中9. 下面有關(guān)構(gòu)造函數(shù)的描述中,正確的選項(xiàng)是 。 A. 構(gòu)造函數(shù)可以帶有返回值 B. 構(gòu)造函數(shù)的名字與類(lèi)名完全相同 C. 構(gòu)造函數(shù)必須帶有參數(shù) D. 構(gòu)造函數(shù)必須定義,不能缺省10.在聲明類(lèi)時(shí),下面的說(shuō)法正確的選項(xiàng)是 。 A. 可以在類(lèi)的聲明中給數(shù)據(jù)成員賦初值 B. 數(shù)據(jù)成員的數(shù)據(jù)類(lèi)型可以是register C. private,public,protected可以按任意順序出現(xiàn) D. 沒(méi)有用private,public,protected定義的數(shù)據(jù)成員是公有成員11.在下面有關(guān)析構(gòu)函數(shù)特征的描述中,正確的選項(xiàng)

4、是 。 A. 一個(gè)類(lèi)可以有多個(gè)析構(gòu)函數(shù) B. 析構(gòu)函數(shù)與類(lèi)名完全相同 C. 析構(gòu)函數(shù)不能指定返回類(lèi)型 D. 析構(gòu)函數(shù)可以有一個(gè)或多個(gè)參數(shù)12.構(gòu)造函數(shù)是在 時(shí)被執(zhí)行的。 A. 程序編譯 B. 創(chuàng)立對(duì)象 C. 創(chuàng)立類(lèi) D. 程序裝入內(nèi)存13. 下面有關(guān)靜態(tài)成員函數(shù)的描述中,正確的選項(xiàng)是 A. 在靜態(tài)成員函數(shù)中可以使用this指針 B. 在建立對(duì)象前,就可以為靜態(tài)數(shù)據(jù)成員賦值 C. 靜態(tài)成員函數(shù)在類(lèi)外定義是,要用static前綴 D. 靜態(tài)成員函數(shù)只能在類(lèi)外定義14.下面有關(guān)友員函數(shù)的描述中,真確的說(shuō)法是 A. 友員函數(shù)是獨(dú)立于當(dāng)前類(lèi)的外部函數(shù) B. 一個(gè)友員函數(shù)不可以同時(shí)定義為兩個(gè)類(lèi)的友員函數(shù)

5、C. 友員函數(shù)必須在類(lèi)的外部進(jìn)行定義 D. 在類(lèi)的外部定義友員函數(shù)時(shí)必須加上friend關(guān)鍵字15.友員的作用之一是 A. 提高程序的運(yùn)行效率 B. 加強(qiáng)類(lèi)的封裝 C. 實(shí)現(xiàn)數(shù)據(jù)的隱蔽性 D. 增加成員函數(shù)的種類(lèi)16.使用派生類(lèi)的主要原因是 A. 提高代碼的可重用性 B. 提高程序的運(yùn)行效率 C. 加強(qiáng)類(lèi)的封裝性 D. 實(shí)現(xiàn)數(shù)據(jù)的隱藏17.在C+中繼承方式有幾中 A. 1 B. 2 C. 3 D. 418.假設(shè)已經(jīng)定義好了類(lèi)student,現(xiàn)在要定義類(lèi)derived,它是從student私有派生的,那么定義類(lèi)derived的正確寫(xiě)法是 A. class derived :student pri

6、vate /. B. class derived :student public /. C. class derived :public student /. D. class derived :private student /.19.派生類(lèi)的對(duì)象對(duì)它的基類(lèi)成員中 是可以訪(fǎng)問(wèn)的。 A.公有繼承的公有成員; B.公有繼承的私有成員; C.公有繼承的保護(hù)成員; D.私有繼承的公有成員。20. 類(lèi)中定義的成員默認(rèn)為 訪(fǎng)問(wèn)屬性。 A. public B. private C. protected D. friend21.以下存儲(chǔ)類(lèi)標(biāo)識(shí)符中,要求通過(guò)函數(shù)來(lái)實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,

7、選用 適宜。 A. 內(nèi)聯(lián)函數(shù); B. 重載函數(shù); C. 遞歸調(diào)用; D. 嵌套調(diào)用。22.C+對(duì)C語(yǔ)言作了很多改良,以下描述中使得C語(yǔ)言發(fā)生了質(zhì)變,從面向過(guò)程變成了面向?qū)ο蟆?A. 增加了一些新的運(yùn)算符; B. 允許函數(shù)重載,并允許設(shè)置缺省參數(shù); C. 規(guī)定函數(shù)說(shuō)明必須用原型; D. 引進(jìn)了類(lèi)和對(duì)象的概念;23.按照標(biāo)識(shí)符的要求, 符號(hào)不能組成標(biāo)識(shí)符。 A. 連接符 B. 下劃線(xiàn) C.大小寫(xiě)字母 D. 數(shù)字字符24.以下變量名中, 是合法的。 A CHINA B byte-size C double D A+a25.以下各種函數(shù)中, 不是類(lèi)的成員函數(shù)。 A 構(gòu)造函數(shù) B 析構(gòu)函數(shù) C 友元函數(shù)

8、 D 拷貝構(gòu)造函數(shù)26.以下 是正確的語(yǔ)句。 A ; B a=17 C x+y D cout0); D) ;59、不是構(gòu)造函數(shù)的特征。A構(gòu)造函數(shù)的函數(shù)名與類(lèi)名相同 B構(gòu)造函數(shù)可以重載C構(gòu)造函數(shù)可以設(shè)置缺省參數(shù) D構(gòu)造函數(shù)必須指定類(lèi)型說(shuō)明60、以下程序段中與語(yǔ)句k=ab? 1:0;功能等價(jià)的是 。A if(ab) k=1; B if(ab) k=0Cif(ab) k=1; Dif(ab) k=0;else k=0; else k=1;61、以下常量中, 不是字符常量。A005 Bn C) c Da62、表示“x大于1而小于10的邏輯表達(dá)式是 。A1x1&x10 C) !(x=10) Dx1|x1

9、063、關(guān)于成員函數(shù)特征的以下描述中,是錯(cuò)誤的。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=1;i10;i+=2) s+=i;couts;程序執(zhí)行后的輸出結(jié)果是 。A 自然數(shù)19的累加和 B 自然數(shù)110的累加和C 自然數(shù)19中的奇數(shù)之和 D 自然數(shù)110中的偶數(shù)之和65、設(shè)有定義:int n=0,*p=&n,*q=&p;那么以下選項(xiàng)中,正確的賦值語(yǔ)句是 。A p=1; B *q=2; C q=p; D *p=5;66、 能正確輸出結(jié)果:C+。 A c

10、har s=C+;coutsendl; Bchar s3=C+;coutsendl; Cchar s3=C,+,+,0;coutsendl; Dchar s3=C,+,+;coutsendl;67、有以下程序段int a10=1,2,3,4,5,6,7,8,9,10,*p=a,b;b=p5;b中的值是 。A5 B6 C 8 D 968、有以下程序#include void main( ) char *p10=abc,aabdfg,dcdbe,abbd,cd;coutp3endl;執(zhí)行后輸出結(jié)果是Adcdbe B abbd C abc D abb69、以下靜態(tài)數(shù)據(jù)成員的特性中,是錯(cuò)誤的。A 說(shuō)明

11、靜態(tài)數(shù)據(jù)成員時(shí)前邊要加修飾符staticB 靜態(tài)數(shù)據(jù)成員要在類(lèi)體外進(jìn)行初始化C 靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共用的D引用靜態(tài)數(shù)據(jù)成員時(shí),要在其名稱(chēng)前加和作用域運(yùn)算符70、有以下語(yǔ)句struct S int g; char h; T;那么下面表達(dá)中不正確的選項(xiàng)是 。AS是結(jié)構(gòu)體名 B該結(jié)構(gòu)體包含2個(gè)成員CS是struct類(lèi)型的變量 DT是struct S類(lèi)型的變量71、派生類(lèi)的對(duì)象對(duì)它的基類(lèi)成員中是可以訪(fǎng)問(wèn)的。A公有繼承的公有成員B公有繼承的私有成員C公有繼承的保護(hù)成員D私有繼承的公有成員72、實(shí)現(xiàn)運(yùn)行時(shí)的多態(tài)性用 。A、重載函數(shù) B、構(gòu)造函數(shù) C、析構(gòu)函數(shù) D、虛函數(shù)73以下變量名中, 是合法的

12、。 A. CHINA B. byte-size C. double D. A+a74. 在int b3=1,3,2,4,5,6,0;b22的值是 。 A. 0 B. 2 C. 5 D. 675. 以下各運(yùn)算符中,優(yōu)先級(jí)最高。A. +雙目 B. *單目 C. = D. *=76. 以下for循環(huán)的次數(shù)為 。for(int i(0),x=0;!x&i=5;i+)A. 5 B. 6 C . 1 D. 無(wú)限77. 下述關(guān)于break語(yǔ)句的描述中, 是正確的。A.break語(yǔ)句可用于循環(huán)體內(nèi),它將退出該重循環(huán)。B.break語(yǔ)句可用于開(kāi)關(guān)語(yǔ)句中,它將退出開(kāi)關(guān)語(yǔ)句。C.break語(yǔ)句可用于if體內(nèi),它將退

13、出if語(yǔ)句。D.break語(yǔ)句在一個(gè)循環(huán)體內(nèi)可以出現(xiàn)屢次。78. 在一個(gè)被調(diào)用函數(shù)中,關(guān)于return語(yǔ)句使用的描述, 是錯(cuò)誤的。A.被調(diào)用函數(shù)中可以不用 return語(yǔ)句。B.被調(diào)用函數(shù)中可以使用多個(gè)return語(yǔ)句。C.被調(diào)用函數(shù)中,如果有返回值,就一定要有return語(yǔ)句。D.被調(diào)用函數(shù)中,一個(gè)return語(yǔ)句可返回多個(gè)值給調(diào)用函數(shù)。79. 在C+中,關(guān)于以下設(shè)置參數(shù)默認(rèn)的描述中, 是正確的。A.不允許設(shè)置參數(shù)的默認(rèn)值。B.設(shè)置參數(shù)默認(rèn)值只能在定義函數(shù)時(shí)設(shè)置。C.設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的。D.設(shè)置參數(shù)默認(rèn)值時(shí),應(yīng)該全部參數(shù)都設(shè)置。80. 以下存儲(chǔ)類(lèi)標(biāo)識(shí)符中,要求通

14、過(guò)函數(shù)來(lái)實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,選用 適宜。A. 內(nèi)聯(lián)函數(shù) B. 重載函數(shù) C. 遞歸調(diào)用 D. 嵌套調(diào)用 81. 以下的各類(lèi)函數(shù)中, 不是類(lèi)的成員函數(shù)。A. 構(gòu)造函數(shù) B. 析構(gòu)函數(shù) C . 友元函數(shù) D. 拷貝初始化構(gòu)造函數(shù) 82. 不是構(gòu)造函數(shù)的特征A.構(gòu)造函數(shù)的函數(shù)名與類(lèi)名相同 B.構(gòu)造函數(shù)可以重載 C.構(gòu)造函數(shù)可以設(shè)置缺省參數(shù) D.構(gòu)造函數(shù)必須指定類(lèi)型說(shuō)明 83.f1(int)是類(lèi)A的公有成員函數(shù),p是指向成員函數(shù)f1()的指針,采用 是正確的。A.p=f1 B. p=A:f1 C. p=A:f1() D. p=f1() 84.以下定義中, 是定義指向數(shù)組的指針

15、p。A.int *p5 B.int (*p)5 C.(int *)p5 D.int *p 85循環(huán)while(int i=0) i-;執(zhí)行次數(shù)是 。A. 0 B. 1 C . 5 D . 無(wú)限86.設(shè)int x;,那么經(jīng)過(guò) 后,語(yǔ)句*px=0;可將x值置為0。A. int * px; B . int const * px=&x; C. int * const px=&x; D. const int * px=&x;87.設(shè)void f1(int * m,long & n);int a;long b;那么以下調(diào)用合法的是 。A. f1(a,b); B. f1(&a,b); C. f1(a,&b)

16、; D. f1(&a,&b)88. 關(guān)于對(duì)象概念的描述中, 是錯(cuò)誤的。A. 對(duì)象就是C語(yǔ)言中的結(jié)構(gòu)變量;B. 對(duì)象代表著正在創(chuàng)立的系統(tǒng)中的一個(gè)實(shí)體;C. 對(duì)象是一個(gè)狀態(tài)和操作或方法的封裝體;D. 對(duì)象之間的信息傳遞是通過(guò)消息進(jìn)行的;89. 在以下double型常量表示中, 是錯(cuò)誤的。A. E15; B. .35; C. 3E5; D. 3E-590. 以下給字符數(shù)組進(jìn)行初始化中, 是正確的。A. char s1 =12345abcd; B. char s23=xyz; C. char s33=a,x,y; D. char s423=xyz,mnp;91. 對(duì)于int *pa5;的描述, 是正確

17、的。A.pa是一個(gè)指向數(shù)組的指針,所指向的數(shù)組是5個(gè)int型元素;B.pa是一個(gè)指向某個(gè)數(shù)組中第5個(gè)元素的指針,該元素是int型變量;C.pa5表示某個(gè)數(shù)組的第5個(gè)元素的值;D.pa是一個(gè)具有5個(gè)元素的指針數(shù)組,每個(gè)元素是一個(gè)int型指針;92. 以下各運(yùn)算符中, 優(yōu)先級(jí)最低。A?: B. | C. | D. !=93. 以下for循環(huán)的循環(huán)體執(zhí)行次數(shù)為 。for(int i(0),j(10);i=j=4;i+,j- -) A. 0; B. 1; C. 4; D. 無(wú)限;94. 下述關(guān)于開(kāi)關(guān)語(yǔ)句的描述中, 是正確的。A.開(kāi)關(guān)語(yǔ)句中default子句可以沒(méi)有,也可以有一個(gè);B.開(kāi)關(guān)語(yǔ)句中每個(gè)語(yǔ)句

18、序列中必須有break語(yǔ)句;C.開(kāi)關(guān)語(yǔ)句中default子句只能放在最后;D.開(kāi)關(guān)語(yǔ)句中case子句后面的表達(dá)式可以是整形表達(dá)式。95. 以下存儲(chǔ)類(lèi)標(biāo)識(shí)符中, 的可見(jiàn)性與存在性不一值。A. 外部類(lèi); B. 自動(dòng)類(lèi); C. 內(nèi)部靜態(tài)類(lèi); D. 存放器類(lèi)。96. 下述靜態(tài)數(shù)據(jù)成員的特征中, 是錯(cuò)誤的。A.說(shuō)明靜態(tài)數(shù)據(jù)成員時(shí)前邊要加修飾符static;B.靜態(tài)數(shù)據(jù)成員要在類(lèi)體外進(jìn)行初始化;C.引用靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名前加和作用域運(yùn)算符;D.靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所共用的。97. 是析構(gòu)函數(shù)的特征。A. 一個(gè)類(lèi)中只能定義一個(gè)析構(gòu)函數(shù); B. 析構(gòu)函數(shù)與類(lèi)名不同;C. 析構(gòu)函數(shù)的定義只能

19、在類(lèi)體內(nèi); D. 析構(gòu)函數(shù)可以有各個(gè)或多個(gè)參數(shù)。;98.:p是一個(gè)指向類(lèi)A數(shù)據(jù)成員m的指針,A1是類(lèi)A的一個(gè)對(duì)象。如果要給m賦值為5, 是正確的。A. A1.p=5; B. A1-p=5;C. A.*p=5; D. *A1.p=5;99.關(guān)于new運(yùn)算符的以下描述中,( )是錯(cuò)的。A.它可以用來(lái)動(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.使用它創(chuàng)立對(duì)象數(shù)組時(shí)必須指定初始值。 100.派生類(lèi)的構(gòu)造函數(shù)的成員初始化列中,不能包含 。A.基類(lèi)的構(gòu)造函數(shù);B.派生類(lèi)中子對(duì)象的初始化;C.基類(lèi)的子對(duì)象初始化;D.派生類(lèi)中一

20、般數(shù)據(jù)成員的初始化101.派生類(lèi)的對(duì)象對(duì)它的基類(lèi)成員中 是可以訪(fǎng)問(wèn)的。A.公有繼承的公有成員;B.公有繼承的私有成員;C.公有繼承的保護(hù)成員;D.私有繼承的公有成員。102C+類(lèi)體系中,不能被派生類(lèi)繼承的有 。A.構(gòu)造函數(shù) B.虛函數(shù) C.靜態(tài)成員函數(shù) D.賦值操作函數(shù)103下面標(biāo)識(shí)符中正確的選項(xiàng)是 。A_abc B3ab C int D+ab104以下哪項(xiàng) 不是面向?qū)ο蟪绦蛟O(shè)計(jì)的主要特征?a.封裝b.繼承c.多態(tài)d.結(jié)構(gòu)105i=5,j=0,以下各式中運(yùn)算結(jié)果為j=6的表達(dá)式是 。Aj=i+j Bj=j+i+ Cj=+i+j Dj=j+i106假設(shè)整型變量a、b、c、d中的值依次為:1、4、

21、3、2。那么條件表達(dá)式ab?a:cd?c:d的值A(chǔ)1 B2 C3 D4107以下不正確的選項(xiàng)是 。 A語(yǔ)句fori=0;i+表示無(wú)限循環(huán) Bfor;表示無(wú)限循環(huán)Cfor也表示無(wú)限循環(huán) Dwhile1表示無(wú)限循環(huán)108有如下程序:int x=3;doX-=2;couta+&cd)?+d:ab的值為 。 A) 9 B)6 C)8 D) 0134、下面有關(guān)重載函數(shù)的說(shuō)法中正確的選項(xiàng)是 。 A)重載函數(shù)必須具有不同的返回值類(lèi)型。B)重載函數(shù)形參個(gè)數(shù)必須不同。 C)重載函數(shù)必須有不同的形參列表。D)重載函數(shù)名可以不同。135、C+語(yǔ)言的跳轉(zhuǎn)語(yǔ)句中,對(duì)于break和continue說(shuō)法正確的選項(xiàng)是 。 A

22、)break語(yǔ)句只應(yīng)用于循環(huán)體中。 B)continue語(yǔ)句只應(yīng)用于循環(huán)體中。 C)break是無(wú)條件跳轉(zhuǎn)語(yǔ)句,continue不是。 D)break和continue的跳轉(zhuǎn)范圍不夠明確,容易產(chǎn)生問(wèn)題。136、longint的字節(jié)數(shù)是 。 A4 B1 C0 D8 137、以下非法的字符常量是 。A# B Ca DA 二、填空: 1. C+語(yǔ)言的頭文件與源程序文件擴(kuò)展名分別是 和 。 2. 在C+程序中使用根本輸入與輸出流時(shí)需要包含的頭文件名是 。 3. 在C+語(yǔ)言中,惟一的一個(gè)三目運(yùn)算運(yùn)算符是 。 4. C+中當(dāng)一個(gè)函數(shù)無(wú)返回值時(shí),那么函數(shù)的類(lèi)型是 。5. 一個(gè)類(lèi)中可以有 個(gè)構(gòu)造函數(shù),只能有

23、個(gè)析構(gòu)函數(shù)。6.一般情況下,按照面向?qū)ο蟮囊?把類(lèi)中的數(shù)據(jù)成員(屬性)定義為 權(quán)限, 而把成員函數(shù)(方法)定義為 權(quán)限.7.在定義類(lèi)的對(duì)象時(shí),C+程序?qū)⒆詣?dòng)調(diào)用該對(duì)象的 函數(shù)初始化對(duì)象自身.在撤銷(xiāo)類(lèi)的對(duì)象時(shí),C+程序?qū)⒆詣?dòng)調(diào)用該對(duì)象的 函數(shù).8.類(lèi)繼承中,缺省的繼承方式是 .9在C+語(yǔ)言中,用轉(zhuǎn)義字符序列 或操縱符 表示輸出一個(gè)換行符。10表達(dá)式a=al表示成增量表達(dá)式為 。11當(dāng)不需要函數(shù)返回任何值時(shí),那么應(yīng)把該函數(shù)類(lèi)型定義為 。12用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出流對(duì)象是 。,用于從鍵盤(pán)上為變量輸人值的標(biāo)準(zhǔn)輸人流對(duì)象是 。13、變量分為全局和局部?jī)煞N, 。變量沒(méi)有賦初值時(shí),其值是不確定的。14

24、、假定類(lèi)AB中有一個(gè)公用屬性的靜態(tài)數(shù)據(jù)成員bb,在類(lèi)外不通過(guò)對(duì)象名訪(fǎng)問(wèn)該成員bb的寫(xiě)法為 。15、類(lèi)的成員分為和。16、一個(gè)和的關(guān)系,正如根本數(shù)據(jù)類(lèi)型與該類(lèi)型的變量一樣,如int x;。17、對(duì)一個(gè)類(lèi)中的數(shù)據(jù)成員的初始化可以通過(guò)構(gòu)造函數(shù)中的實(shí)現(xiàn),也可以通過(guò)構(gòu)造函數(shù)中的實(shí)現(xiàn)。18、類(lèi)有兩種用法:一種是,即生成類(lèi)的對(duì)象;另一種是通過(guò),派生出新的類(lèi)。19、C+語(yǔ)言提供的機(jī)制允許一個(gè)派生類(lèi)繼承多個(gè)基類(lèi),即使這些基類(lèi)是相互無(wú)關(guān)的。20、聲明虛函數(shù)的方法是在基類(lèi)中的成員函數(shù)原型前加上關(guān)鍵字。21、如果一個(gè)類(lèi)中有一個(gè)或多個(gè)純虛函數(shù),那么這個(gè)類(lèi)稱(chēng)為。22、靜態(tài)數(shù)據(jù)成員在定義或說(shuō)明時(shí),前面要加上關(guān)鍵字。23、如

25、果成員函數(shù)不需要訪(fǎng)問(wèn)類(lèi)的成員,那么可以把它聲明為靜態(tài)成員函數(shù)。24、友元可以是,也可以是。25、假設(shè)需要把一個(gè)函數(shù)“void fun();定義為一個(gè)類(lèi)A的友元函數(shù),那么應(yīng)在類(lèi)A的定義中參加一條語(yǔ)句:。26、運(yùn)算符函數(shù)中的關(guān)鍵字是,它和一起組成該運(yùn)算符函數(shù)的函數(shù)名。27、類(lèi)中運(yùn)算符重載一般采用兩種形式:和。28、面向?qū)ο蟪绦蛟O(shè)計(jì)的3大機(jī)制為:、和。2、類(lèi)的訪(fǎng)問(wèn)權(quán)限有、和三種。29、構(gòu)造函數(shù)是被創(chuàng)立時(shí)自動(dòng)執(zhí)行,對(duì)象消失時(shí)自動(dòng)執(zhí)行的成員函數(shù)稱(chēng)為。30、如果類(lèi)A繼承了類(lèi)B,那么類(lèi)A稱(chēng)為,類(lèi)B稱(chēng)為。31、如果一個(gè)特定的類(lèi)型S當(dāng)且僅當(dāng)它提供了類(lèi)型T的行為時(shí),那么稱(chēng)類(lèi)型S是類(lèi)型T的。32、在類(lèi)定義中,將置于

26、虛函數(shù)的函數(shù)原型的末尾可以聲明該函數(shù)為純虛函數(shù)。33、類(lèi)的靜態(tài)成員分為和。34、友元函數(shù)的聲明可以放在類(lèi)的局部,也可以放在類(lèi)的局部,它們是沒(méi)有區(qū)別的。35、如果說(shuō)類(lèi)B是類(lèi)A的友元類(lèi),那么類(lèi)B的所有成員函數(shù)都是類(lèi)A的。36、設(shè)a和b是兩個(gè)整型變量,我們用a+b的形式求這兩個(gè)變量的和;設(shè)c和d為浮點(diǎn)型變量,我們用c+d的形式求這兩個(gè)變量的和。顯然運(yùn)算符“+具有不同的用途,這是的例子。37、對(duì)于雙目運(yùn)算符,假設(shè)重載為類(lèi)的成員函數(shù),有個(gè)參數(shù);假設(shè)重載為友元函數(shù),那么有個(gè)參數(shù)。38、 當(dāng)建立_,程序自動(dòng)調(diào)用該類(lèi)的構(gòu)造函數(shù)。39、 在C+中有二種參數(shù)傳遞方式:_ 和_ 。40、 模板對(duì)處理數(shù)據(jù)的類(lèi)型的要求

27、不同可以分為兩種類(lèi)型:_ 和 _。41、 異常是通過(guò)_ 、_和_ 來(lái)實(shí)現(xiàn)的。42、 虛函數(shù)實(shí)現(xiàn)了C+的_ 機(jī)制,類(lèi)實(shí)現(xiàn)了C+的_ 機(jī)制。43、 面向?qū)ο蟪绦蛟O(shè)計(jì)的_機(jī)制提供了重復(fù)利用程序資源的一種途徑。44、C+語(yǔ)言程序設(shè)計(jì)的三種根本結(jié)構(gòu)是:_ 、 _ 、 _ 。45、為了防止嵌套的條件語(yǔ)句if-else的二義性,C+語(yǔ)言規(guī)定else與_配對(duì)使用。46、定義函數(shù)時(shí),在函數(shù)的類(lèi)型前加上修飾詞 _,指明將該函數(shù)定義為內(nèi)聯(lián)函數(shù)。47、有說(shuō)明語(yǔ)句:*p;那么*p+運(yùn)算首先訪(fǎng)問(wèn) _,然后使_ 的值加1。48、執(zhí)行int *p=new int 操作,可以得到一個(gè)動(dòng)態(tài)分配整型對(duì)象的_。49、有說(shuō)明語(yǔ)句:in

28、t *p;那么(*p)+運(yùn)算首先訪(fǎng)問(wèn) _,然后使 _的值加1。50 C+目標(biāo)程序經(jīng)_后生成擴(kuò)展名為exe的可執(zhí)行程序文件。51 16位計(jì)算機(jī)中整型占_個(gè)字節(jié)存儲(chǔ)空間。52 要在屏幕上顯示Hello,world!應(yīng)執(zhí)行語(yǔ)句cout=0|x=0) coutabcd;else coutwxyz;屏幕上顯示的是_。56 設(shè)一維整型數(shù)組data已進(jìn)行了初始化,那么其元素個(gè)數(shù)可由操作符sizeof通過(guò)表達(dá)式_計(jì)算出來(lái)。57 假設(shè)一全局變量只允許本程序文件中的函數(shù)使用,那么定義它時(shí)應(yīng)加上修飾符_。58 設(shè)有int w34;,pw是與數(shù)組名w等價(jià)的數(shù)組指針,那么pw應(yīng)初始化為_(kāi)。59.要使引用pr代表變量ch

29、ar * p;,那么pr應(yīng)初始化為_(kāi)。60在C+中封裝性、繼承性和_ 是面向?qū)ο笏枷氲闹饕卣鳌?1假設(shè)int a=1,b2;那么表達(dá)式a+-b的值為 _。62下面的程序?qū)崿F(xiàn)輸出x,y,z三個(gè)數(shù)中的最大值,請(qǐng)?zhí)钊胝_的內(nèi)容。#includevoid main int x=5,y=8,z=9, u, v; if_ u=x;else u=y;if_ v=u;else v=z;coutv=v。 40.某類(lèi)中的友元類(lèi)的所有成員函數(shù)可以存取或修改該類(lèi)中的私有成員。 41.對(duì)象數(shù)組的元素可以是不同類(lèi)的對(duì)象。 42.const char *p說(shuō)明了p是指向字符串的常量指針。 43、引用就是某個(gè)變量的別名,對(duì)

30、引用的操作,實(shí)質(zhì)上就是對(duì)被引用的變量的操作。44、無(wú)論是私有繼承還是保護(hù)繼承中,基類(lèi)中所有成員對(duì)派生類(lèi)對(duì)象都是不可見(jiàn)的。45、當(dāng)break語(yǔ)句用在雙重循環(huán)的內(nèi)循環(huán)中時(shí),它只能退出內(nèi)循環(huán)到外循環(huán)中去,而不能直接退出整個(gè)雙重循環(huán)。 46、For循環(huán)是只有可以確定的循環(huán)次數(shù)時(shí)才可使用,否那么不能用for循環(huán)。 47、返回值類(lèi)型、參數(shù)個(gè)數(shù)和參數(shù)類(lèi)型都相同的函數(shù)也可以重載。 48、通常的拷貝初始化函數(shù)的參數(shù)是某個(gè)對(duì)象的成員名或?qū)ο蟮囊妹?49、友元函數(shù)是類(lèi)的成員函數(shù),所以可以存取或修改該類(lèi)中的私有成員。 50、:類(lèi)A中一個(gè)成員函數(shù)說(shuō)明如下:void Set(A&a);其中A &a的含意是將a的地址值

31、賦給變量Set。 51、在語(yǔ)句const char *ptr中, ptr是指向字符串的常量指針。 52、多繼承情況下,派生類(lèi)的構(gòu)造函數(shù)的執(zhí)行順序取決于定義派生類(lèi)時(shí)所指定的各基類(lèi)的順序,而與派生類(lèi)構(gòu)造函數(shù)中所定義的成員初始化列表的各項(xiàng)順序無(wú)關(guān)。 53、在說(shuō)明語(yǔ)句 int a(15),&b=a,*p=&a;中,b的值的*P的是不相等的。54、:int a(5),b(10);表達(dá)式+a+b+有二義性。55、在不同類(lèi)型操作數(shù)組成的表達(dá)式中,其表達(dá)式的類(lèi)型一定是最高類(lèi)型double型。56、break語(yǔ)句也可以用于if體內(nèi),它可退出if語(yǔ)句。57、在一個(gè)被調(diào)用函數(shù)中,一個(gè)return語(yǔ)句可返回多個(gè)值給調(diào)

32、用函數(shù)。58、在傳值調(diào)用中,要求實(shí)參和形參的類(lèi)型完全一致并且個(gè)數(shù)相等。59、for循環(huán)中,循環(huán)變量的作用域是該循環(huán)的循環(huán)體內(nèi)。60、所謂私有成員是指只有類(lèi)中所提供的成員函數(shù)才能直接訪(fǎng)問(wèn)它們,任何類(lèi)以外的函數(shù)對(duì)它們的訪(fǎng)問(wèn)都是非法的。61、const char *p說(shuō)明了p是指向字符串的常量指針。62、私有繼承中,基類(lèi)中所有成員對(duì)派生類(lèi)的對(duì)象都是不可見(jiàn)的。四、指出函數(shù)或程序的功能。1、 template void AC(Type &x , Type &y ) Type a=x;x=y ;y=a ; 2、int AB(int *a , int n)int x=a0;for (int i=1; in;

33、 i+)if (aix) x=ai;return x; 3 int AB(int *a , int n)int x=a0;for (int i=1; in; i+)if (aix) x=ai;return x;4. float fact(int n)float t=1;for(int i=1;i=n;i+)t*=i;return t;#include void main( ) float t;int n=10; coutfact(n)endl;五、寫(xiě)出程序運(yùn)行結(jié)果每題3分,共15分1、#include int a=2,4,6,8,10;int &index(int i) return ai;v

34、oid main() int i; index(3)=12; for (i=0;i=4;i+) coutai ;2、#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); couta bendl;3、#include int i=15;void main() int i; i=100; i=i+1; coutiendl;4、#include class toypublic: toy(int q, int p) quan = q; price = p; int

35、 get_quan() return quan; int get_price() return price; private: int quan, price; ;main() toy op32= toy(10,20),toy(30,48), toy(50,68),toy(70,80), toy(90,16),toy(11,120),; int i; for (i=0;i3;i+) coutopi0.get_quan(),; coutopi0.get_price()n; coutopi1.get_quan(),; coutopi1.get_price()n; coutn; return 0;5

36、、#include class examplepublic: example(int n) i=n; coutConstructingn ; example() cout Destructingn; int get_i() return i; private: int i;int sqr_it(example o) return o.get_i()* o.get_i();main() example x(10); coutx.get_i()endl; coutsqr_it(x)endl; return 0;6、#include class Test private: int x; public

37、: Test() cout“構(gòu)造函數(shù)被執(zhí)行endl; x=0; Test() cout“析構(gòu)函數(shù)被執(zhí)行endl; void print() cout“x=xendl; ; void main() Test obj1,obj2;obj1.print();obj2.print(); 7、#include class A public: A(int *s) coutsendl; ; class B:public A public: B(char *s1,char *s2):A(s1) couts2endl; ; class C:public A public: C(char *s1,char *s2

38、):A(s1) couts2endl; ; class D:public B,C public: D(char *s1,char *s2,char *s3,char *s4):B(s1,s2),C(s3,s4) couts4endl; ; void main() D d (“class A,class B,class C,class D); 8、#include class Base public: virtual void disp() coutbase classendl; ; class Derivel:public Base public: void disp() coutderive

39、l classendl; ; class Derive2:public Base public: void disp() coutderive2 classdisp(); p=&d1; p-disp(); p=&d2; p-disp(); 9、#include class Sample private: int x; static int y; public: Sample(int a); void print(); ; Sample: Sample(int a) x=a; y +; void Sample:print() coutx=x,y=yendl; int Sample:y=25; v

40、oid main() Sample s1(5); Sample s2(10); s1.print(); s2.print(); 10、#include class Sample private: int x; public: Sample () Sample(int a) x=a; void disp() coutx=xendl; friend Sample operator+( Sample &s1, Sample &s2); ; Sample operator+( Sample &s1, Sample &s2) return Sample(s1.x+s2.x); void main() S

41、ample obj1(10); Sample obj2(20); Sample obj3; obj3=obj1+obj2; obj3.disp(); 11、#include class Test private: int x; public: Test() cout“構(gòu)造函數(shù)被執(zhí)行 endl; x=0; void print() cout“x=xendl; ; void main() Test obj1,obj2;obj1.print();obj2.print(); 12、#include class A protected: int x; public: A(int x) A:x=x; co

42、utclass Aendl; ; class B private: A a1; public: B(int x):a1(x) coutclass Bendl; ; class C:public B private: A a2; public: C(int x):B(x),a2(x) coutclass Cendl; ; class D:public C public: D(int x):C(x) coutclass Dendl; ; void main() D dobj(10); 13、#include class Point private: int x; int y; public: Po

43、int (int a,int b) x=a; y=b; virtual int area() return 0; ; class Rectangle:public Point private: int length; int width; public: Rectangle(int a,int b,int l,int w): Point(a,b) length=l; width=w; virtual int area() return length*width; ; void disp(Point &p) cout“面積是:p.area()endl; void main() Rectangle

44、 rect(3,5,7,9); Disp(rect); 14、#include class Sample private: int x; static int y; public: Sample(int a); void print(); ; Sample: Sample(int a) x=a; y=x+; void Sample:print() coutx=x,y=yendl; int Sample:y=25; void main() Sample s1(5); Sample s2(10); s1.print(); s2.print(); 15、#include class Sample p

45、rivate: int x; public: Sample() Sample (int a) x=a; void disp() coutx=xendl; Sample operator+( Sample &s); ; Sample Sample: operator+( Sample &s) return Sample(x+s.x); void main() Sample obj1(20); Sample obj2(20); Sample obj3;obj3=obj1+obj2; obj3.disp(); 16、# include class A int a , b ;public :A( )

46、a=b=0; A( int aa , int bb ) : a(aa),b(bb) cout a=a,b=bendl;A( )cout Destructor!endl; ;void main() A x , y(2 , 3); 17、 # include int AD(int a , int n) int x=1;for (int i=0; in; i+)x*=ai;return x;void main() int a= 2, 8, 6, 5;cout AD(a , 4)endl;18、#include class Rpublic:R(int r1,int r2) R1=r1;R2=r2;vo

47、id print();void print() const;private:int R1,R2;void R:print()coutR1:R2endl;void R:print() constcoutR1;R2endl;void main() R a(5,4); a.print();const R b(20,52);b.print();19、#include class Apublic:virtual void act1();void act2() act1();void A:act1()coutA:act1() called. endl;class B : public Apublic:vo

48、id act1();void B:act1()coutB:act1() called. endl;void main()B b;b.act2(); # include void fun(int,int,int * ); void main() int x,y,z; fun (2,3,&x); fun (4,x,&y); fun (x,y,&z); coutx,y,zendl; void fun(int a,int b,int * c ) b*=a;*c=b-a;20、#include void main()int x=3,y=3;switch(x%2)case 1: switch (y) ca

49、se 0:coutfirstt; case 1:coutsecondt;break; default: couthellot; case 2:coutthirdn; 21、#include int a8=1,2,3,4,5,6,7;void fun(int b ,int n);void main( ) int m=8; fun(a,m); couta7endl; void fun(int b ,int n)for (int I=0;In-1;I+) b7+=bI;22、#include class AA public: AA(int i,int j) A=i;B=j;coutConstruct

50、orn; AA(AA &obj) A=obj.A+1;B=obj.B+2;coutCopy_Constructorn; AA() coutDestructorn; void print() coutA=A,B=Bprint(); delete pa;23、#includevoid main()int i(0);while(+i)if(i= =10) break;if(i%3!=1) continue;coutiendl;24、#include int a8=1,2,3,4,5,6,7;void fun(int *pa,int n);void main( ) int m=8; fun(a,m);

51、 couta7endl; void fun(int *pa,int n)for (int I=0;In-1;I+) *(pa+7)+= *(pa+I);25、#includevoid ff(int x),ff(double x);void main() float a(88.18);ff(a);char b(a);ff(b); void ff(int x)coutff(int): xendl; void ff(double x)coutff(double): xendl;26、#include class AA public: AA(int i,int j) A=i;B=j;coutConst

52、ructorn; AA(AA &obj) A=obj.A+1;B=obj.B+2;coutCopy_Constructorn; AA() coutDestructorn; void print() coutA=A,B=Bprint(); delete pa; 27、#include void main() int a,b,c,d(5); c=2,c+=10;a =b=10; a * = 2; b / = 2; c % = 2; couta,b,cendl;28、#include void main() char flag=c ; switch(flag)case a :cout1endl ;c

53、ase b :cout2endl ; break;case c : cout 3endl ; default : cout 4endl ; break; 29、#include void main()static int b3 = 1,2,3,4,5,6 ;b02=12,b12=18;cout *bt*(b+1) t*(b+1)t*(*(b+1)+2) n;cout b02+b12+b22 endl;30、#include void Swap( int &a, int & b);void main()int x( 10 ), y( 7 );coutx=x y=yendl;Swap( x , y

54、 );coutx=x y=yendl;void Swap(int & a, int & b)int temp;temp = a ;a=b ;b=temp ; 31、#include class Apublic:A();A(int i,int j);A()coutDonstructor.n;void print();private:int a,b;A:A()a=b=10;coutDefault constructor.n;A:A(int i,int j) a=i,b=j;coutConstructor.n;void A:print()couta=a,b=bendl;void main()A m,

55、n(15,18);m.print();n.print();32、/ program 1_2.cpp #include void main() int a,b,sum; a=43; / b=37; sum=a+b; coutThe sum issum; coutendl; / endl 33、#include class Sample int n; static int sum; public: Sample(int x)n=x; void add()sum+=n; void disp() coutn=n,sum=sumendl; ; int Sample:sum=0; void main()

56、Sample a(2),b(3),c(5); a.add(); a.disp(); b.add(); b.disp(); c.add(); c.disp(); 34、#include class Sample int x; public: Sample(); Sample(int a)x=a; Sample(Sample &a)x=a.x+ +10; void disp()coutx=xendl; ; void main() Sample s1(2),s2(s1); s1.disp(); s2.disp(); 35、 #include class A public: A(char *s) co

57、ut s endl; A() ; class B:public A public: B(char *sl,char *s2) :A(sl) cout s2 endl; ; class C:public A public: C(char *sl,char *s2) :A(sl) cout s2 endl; ; class D:public B,public C public: D(char *sl,char *s2,char *s3,char *s4) :B(sl,s2),C(sl,s3) cout s4 endl; void main () D d(class A,class B,class

58、C,class D); 36、/ program 1_1.cpp #include void main() coutLets learn to write a C+ Program.; cin.get(); 37、#includevoid main() int i,n; n=0; for(i=1;i=5;i+)n=n+i; coutn=nendl; 38、#include class Sample int n; public: Sample(int i)n=i; friend int add(Sample &s1,Sample &s2); ; int add(Sample &s1,Sample

59、 &s2) return s1.n+s2.n; void main() Sample s1(10),s2(20); coutadd(s1,s2)endl; 39、#include class Sample int x,y; public: Sample()x=y=0; Sample(int a,int b)x=a;y=b; Sample() if(x=y) coutx=yendl; else coutx!=yendl; void disp() coutx=x,y=yendl; ; void main() Sample s1(2,3); s1.disp(); 六、分別指出下面的p各是什么。1、i

60、nt *p; 2、int *p3;3、int (*p)3; 4、int *p( );5、int *p;七、指出以下程序的錯(cuò)誤,并說(shuō)明為什么:1、#include class Student int sno; int age; void printStu(); void setSno(int d);void printStu() coutnStudent No. is sno, ; coutage is age.endl;void setSno(int s) sno=s;void setAge(int a) age=a;void main() Student lin; lin.setSno(20

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論