最新大學(xué)C++期末考試題庫及答案更正部分答案_第1頁
最新大學(xué)C++期末考試題庫及答案更正部分答案_第2頁
最新大學(xué)C++期末考試題庫及答案更正部分答案_第3頁
最新大學(xué)C++期末考試題庫及答案更正部分答案_第4頁
最新大學(xué)C++期末考試題庫及答案更正部分答案_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精品文檔2012年大學(xué)C+期末考試題庫一、單選題:1. 能作為C+程序的基本單位是(C )。A. 字符 B. 語句 C. 函數(shù) D.源程序文件2. 程序中主函數(shù)的名字為(A )。A. mai nB. MAINC. Mai nD.任意標識符3. 關(guān)于C+與 C語言的關(guān)系的描述中,(D)是錯誤的。A. C 語言是C+的一個子集; B. C 語言與C+是兼容的;C. C+ 對C語言進行了一些改進; D. C+和C語言都是面向?qū)ο蟮?. 可用作C+語言用戶標識符的一組標識符是(B)。A. void defi ne +WORD B. a3_b3 _123 YNC. for -abc Case D. 2a

2、 DO sizeof5. 存儲以下數(shù)據(jù),占用存儲字節(jié)最多的是(D)。A. 0 B.' 0' C.“ 0”D. 0.06. 設(shè)int a=12;則執(zhí)行完語句 a+=a*a;后,a的值是(C )。A.12 B.144 C.156 D.2887. 假設(shè)在程序中a、b、c均被定義成整型,所賦的值都大于1,則下列能正確表示代數(shù)式1的表達式是(D)。abcA. 1.0/a*b*c B. 1/(a*b*c) C. 1/a/b/(float)c D. 1.0/a/b/c8. 以下說法中正確的是(B)。A. C+程序總是從第一個定義的函數(shù)開始執(zhí)行B. C+程序總是從main函數(shù)開始執(zhí)行C. C+

3、函數(shù)必須有返回值,否則不能使用函數(shù)D. C+程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個程序文件中9. 下面有關(guān)構(gòu)造函數(shù)的描述中,正確的是( B )。A. 構(gòu)造函數(shù)可以帶有返回值B.構(gòu)造函數(shù)的名字與類名完全相同C.構(gòu)造函數(shù)必須帶有參數(shù)D.構(gòu)造函數(shù)必須定義,不能缺省10. 10.在聲明類時,下面的說法正確的是()。A. 可以在類的聲明中給數(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ù)特征的描述中,正確的

4、是( C )。A. 一個類可以有多個析構(gòu)函數(shù)B.析構(gòu)函數(shù)與類名完全相同C.析構(gòu)函數(shù)不能指定返回類型D.析構(gòu)函數(shù)可以有一個或多個參數(shù)12.構(gòu)造函數(shù)是在(B )時被執(zhí)行的。A.程序編譯B.創(chuàng)建對象C.創(chuàng)建類D.程序裝入內(nèi)存13.卜面有天靜態(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ù)B. 一個友員函數(shù)不可以同時定義為兩個類的友員函數(shù)C. 友員函數(shù)必須在類的

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

6、 class derived :stude nt public /.C. class derived:public stude nt /.D. class derived:private stude nt /.19.派生類的對象對它的基類成員中(A)是可以訪問的。A.公有繼承的公有成員 ;B.公有繼承的私有成員;C. 公有繼承的保護成員;D.私有繼承的公有成員。20. 類中定義的成員默認為( B )訪問屬性。A. public B. privateC. protected D. friend21.下列存儲類標識符中,要求通過函數(shù)來實現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速 度,選用( A )合

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

8、C友元函數(shù) D拷貝構(gòu)造函數(shù)26. 下列(A )是正確的語句。A; B a=17C x+yD cout<<"n"27. 不能作為函數(shù)重載判斷的依據(jù)的是(A)A.返回類型B. constC參數(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

9、X;語句時將自動調(diào)用該類的(B)A. 有參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值構(gòu)造函數(shù)31. C+程序從上機到得到結(jié)果的幾個操作步驟依次是(B )。A.編譯、編輯、連接、運行B.C.編譯、運行、編輯、連接D.32. 假定一條定義語句為“ int a10, X, *p=a; X,則不正確的語句為(D )。編輯、編譯、連接、運行編輯、運行、編輯、連接,若要把數(shù)組 a 中下標為 3 的元素值賦給A. X=p3; B. X=*(a+3); C. X=a3; D. X=*p+3;33. 關(guān)于封裝,下列說法中不正確的是( D )。A. 通過封裝,對象的全部屬性和操作結(jié)合在一起,形成

10、一個整體B. 通過封裝,一個對象的實現(xiàn)細節(jié)被盡可能地隱藏起來(不可見)C. 通過封裝,每個對象都成為相對獨立的實體D. 通過封裝,對象的屬性都是不可見的34. 預(yù)處理命令在程序中都是以 ( B ) 符號開頭的。A. * B. # C. & D. 35. 存儲以下數(shù)據(jù),占用存儲字節(jié)最少的是( B )。A. 0 B. 0'C.“ 0”D. 0.036. 程序運行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應(yīng)使用( D )符號作為分隔符。A.空格或逗號B.逗號或回車C.逗號或分號D.空格或回車37.假定變量m定義為“ int m=7; ”,則定義變量p 的正確語句為(B )。A. i

11、nt p=&m;B. int *p=&m;C. int&p=*m; D.int*p=m38. 下面的哪個保留字不能作為函數(shù)的返回類型? CA. void B. intC. newD. long39. 采用重載函數(shù)的目的是( D )。A. 實現(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語言作了很多改進,下列描述中( D )使得C語言發(fā)生了

12、質(zhì)變,從面向過程變成了面向?qū)ο蟆、增加了一些新的運算符;B、允許函數(shù)重載,并允許設(shè)置缺省參數(shù);C規(guī)定函數(shù)說明必須用原型;D、引進了類和對象的概念;42、所謂數(shù)據(jù)封裝就是將一組數(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ù)

13、可以重載;C構(gòu)造函數(shù)可以設(shè)置缺省參數(shù);D、構(gòu)造函數(shù)必須指定類型說明。45、 假定一個類的構(gòu)造函數(shù)為B(int x,int y)a=x-;b=a*y-;,則執(zhí)行 B x(3,5); 語句后, x.a 和 x.b 的值分別為 (C )A、 3 和 5 B 、 5 和 3 C 、 3 和 15 D 、 20 和 546、 關(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、受保護D、不受保護48、 友元的作用

14、是(A)。A、提高程序的運用效率;B、加強類的封裝性;C實現(xiàn)數(shù)據(jù)的隱藏性;D、增加成員函數(shù)的種類;49、 在C+中,關(guān)于下列設(shè)置缺省參數(shù)值的描述中,(B )是正確的。A、不允許設(shè)置缺省參數(shù)值;B在指定了缺省值的參數(shù)右邊,不能出現(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)。A、

15、 p 指針;B、 p 指針指向的變量;C p指針指向的數(shù)據(jù)類型;D、上述A B C三者;52、 當(dāng)需要打開 A盤上的以xxk.dat文件用于輸入時,則定義文件流對象的語句為(B )。A、fstream fin(“A:xxk.dat”,1)B 、 ifstream fin(“A:xxk.dat”,ios:nocreate)C、ofstream fin(“A:xxk.dat”)D 、 ifstream fin(“A:xxk.dat” ,ios:a p p )53、派生類的對象對它的基類成員中( A )是可以訪問的。A、公有繼承的公有成員;B、公有繼承的私有成員;C公有繼承的保護成員; D、私有繼承

16、的公有成員;54、 假定一個字符串的長度為n,則定義存儲該字符串的字符數(shù)組的長度至少為(C)。A、 n-1 B 、 n C 、 n+1 D 、 n+255、在 int a=3; *p=&a; 中, *p 的值是( D)。A、變量a的地址值B 、無意義C、變量p 的地址值D、 356、 下列常量中, (D )不是字符常量。A、' 005 ' B 、'n ' C 、'c 'D 、a ”“a”57、在 int a=3,*p=&a;中, *p 的值是(D)。A)變量a的地址值B)無意義C、)變量 p 的地址值D) 358、以下 4個選項中

17、,不能看作一條語句的是(B )。A) if(b=0) m=1;n=2;B) a=0,b=0,c=0;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ù)必須指定類型說明60、以下程序段中與語句 k=a>b? 1:0 ;功能等價的是( D )。A) 1<x<10 B ) x>1&&x<1063、關(guān)于成員函數(shù)特征的下列描述中, A)成員函數(shù)一定是內(nèi)聯(lián)函數(shù)C)成員函數(shù)可以設(shè)置缺省參數(shù)值64、有以下程序 #include <iostrea

18、m.h> void main( ) int i,s=0;for(i=1;i<10;i+=2) s+=i; cout<<s; 程序執(zhí)行后的輸出結(jié)果是( C )。A) C)65、C) !(x<=1|x>=10) D (A)是錯誤的。)D)成員函數(shù)可以重載 成員函數(shù)可以是靜態(tài)的) x>1|x<10自然數(shù) 1 9 的累加和 自然數(shù) 19 中的奇數(shù)之和 設(shè)有定義: int n=0,*p=&n,*q=&p; p=1; B ) *q=2; CC+。A)66、( A)能正確輸出結(jié)果:A)B)C)D)) 自然數(shù)) 自然數(shù)則以下選項中,Dq=p;11

19、0的累加和110中的偶數(shù)之和正確的賦值語句是() *p=5;D)。char s="C+"cout<<s<<endl;char s3="C+"cout<<s<<endl; char s3='C','+','+','0'cout<<s<<endl; char s3='C','+','+'cout<<s<<endl;A)if(a>b) k=1;B)i

20、f(a>b) k=0C)if(a>b) k=1;D)if(a<b) k=0;else k=0; else k=1;61、下列常量中,(D )不是字符常量。A)'005 'B)'n'C)' c 'D) "a"62、表示“ x 大于 1而小于 10”的邏輯表達式是( B )。精品文檔67、有以下程序段int a10=1,2,3,4,5,6,7,8,9,10,*p=a,b;b=p5;b中的值是(B )。A) 5 B ) 668、有以下程序#include <iostream.h>void main( )

21、 char *p10="abc","aabdfg","dcdbe","abbd","cd" cout<<p3<<endl;執(zhí)行后輸出結(jié)果是 B) abbA) dcdbe B ) abbd C ) abc69、下列靜態(tài)數(shù)據(jù)成員的特性中, ( C )是錯誤的。A) 說明靜態(tài)數(shù)據(jù)成員時前邊要加修飾符 staticB)靜態(tài)數(shù)據(jù)成員要在類體外進行初始化C)靜態(tài)數(shù)據(jù)成員不是所有對象所共用的D)引用靜態(tài)數(shù)據(jù)成員時,要在其名稱前加< 類名和作用域運算符70、有以下語句struct

22、S int g;char h; T;則下面敘述中不正確的是( C )。A)S是結(jié)構(gòu)體名B)該結(jié)構(gòu)體包含2個成員C) S 是 struct 類型的變量D ) T 是 struct S 類型的變量71、 派生類的對象對它的基類成員中(A)是可以訪問的。A)公有繼承的公有成員B)公有繼承的私有成員C)公有繼承的保護成員D)私有繼承的公有成員72、 實現(xiàn)運行時的多態(tài)性用。 DA、重載函數(shù)B、構(gòu)造函數(shù) C、析構(gòu)函數(shù)D、虛函數(shù)73下列變量名中,( A )是合法的。A. CHINA B. byte-size C. double D. A+a74. 在 int b3=1,3,2,4,5,6,0;b22的值是(

23、D )。A. 0B. 2 C. 5 D. 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. 5B. 6 C . 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)體

24、內(nèi)可以出現(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ù)默認的描述中,(C )是正確的。A. 不允許設(shè)置參數(shù)的默認值。B. 設(shè)置參數(shù)默認值只能在定義函數(shù)時設(shè)置。C. 設(shè)置參數(shù)默認值時,應(yīng)該是先設(shè)置右邊的再設(shè)置左邊的。D. 設(shè)置參數(shù)默認值時,應(yīng)該全部參數(shù)都設(shè)置。80. 下列存儲類標識符中, 要

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

26、向數(shù)組的指針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 )。A. 0B. 1C . 5D .無限86.設(shè) int x ;,則經(jīng)過(C )后,語句 *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)用合法的是( BA.f1

27、(a ,b) ;B. f1(&a,b);C.f1(a , &b) ;D. f1(&a,&b)88.關(guān)于對象概念的描述中, ( A )是錯誤的。83. f1(int)是類 A 的公有成員函數(shù),A. 對象就是 C 語言中的結(jié)構(gòu)變量 ;B. 對象代表著正在創(chuàng)建的系統(tǒng)中的一個實體;C. 對象是一個狀態(tài)和操作(或方法)的封裝體D. 對象之間的信息傳遞是通過消息進行的是錯誤的。89. 在下列 double 型常量表示中, ( AA. E15; B. .35; C. 3E5;D. 3E-590. 下列給字符數(shù)組進行初始化中,A )是正確的。A. char s1 ="

28、12345abcd"B. char s23="xyz"C. char s33=a', 'x'y' ;D. char s423="xyz","mnp"91. 對于 int *pa5; 的描述,( D )是正確的。A. pa 是一個指向數(shù)組的指針,所指向的數(shù)組是5 個 int 型元素;B. pa 是一個指向某個數(shù)組中第 5 個元素的指針,該元素是 int 型變量;C. pa5 表示某個數(shù)組的第 5 個元素的值;D. pa 是一個具有 5 個元素的指針數(shù)組,每個元素是一個 int 型指針; 92.

29、下列各運算符中, ( A )優(yōu)先級最低。A?: B. | C. | D.! =93. 下列 for 循環(huán)的循環(huán)體執(zhí)行次數(shù)為( D )。 for(int i(0),j(10);i=j=4;i+,j- -)A. 0; 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 子句后面的表達式可以是整形表達式。95. 下列存儲類標識符中, ( C )的可見性與存在性不

30、一值。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ù)成員要在類體外進行初始化;C. 引用靜態(tài)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員名前加<類名 >和作用域運算符;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的一個對

31、象。如果要給m賦值為 5,( C )是正確的。A. A1.p=5;B. A1->p=5;C. A.*p=5;D. *A1.p=5;99. 關(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ù)組時必須指定初始值。100. 派生類的構(gòu)造函數(shù)的成員初始化列中,不能包含( C )。A. 基類的構(gòu)造函數(shù) ;B. 派生類中子對象的初始化 ;C. 基類的子對象初始化 ;D. 派生類中一般數(shù)據(jù)成員的初始化101. 派生類的對象對它的基類成員中(

32、 A )是可以訪問的。A. 公有繼承的公有成員 ;B. 公有繼承的私有成員;C. 公有繼承的保護成員;D. 私有繼承的公有成員。102. C+類體系中,不能被派生類繼承的有( A )。A. 構(gòu)造函數(shù) B. 虛函數(shù) C. 靜態(tài)成員函數(shù) D. 賦值操作函數(shù)103. 下面標識符中正確的是(A )。A. _abc B . 3ab C . int D . +ab104. 下列哪項( D )不是面向?qū)ο蟪绦蛟O(shè)計的主要特征?a. 封裝b. 繼承c. 多態(tài)d. 結(jié)構(gòu)105. 已知i=5 , j=0,下列各式中運算結(jié)果為j=6的表達式是(C )。A. j=i+ (+j ) B . j=j+i+ C . j=+i

33、+j D . j=j+i106.若整型變量 a、 b、 c、d 中的值依次為:1 、 4、3、 2。則條件表達式 a<b?a:c<d?c:d的值A(chǔ)A. 1B. 2C. 3D. 4107.以下不正確的是( C)。A.語句 for ( i=0 ; i+ )表示無限循環(huán)B . for (;)表示無限循環(huán)C.for ()也表示無限循環(huán)D. while ( 1)表示無限循環(huán)108.有如下程序:int x=3 ; doX-=2; cout<<x ;while(!(-x); 執(zhí)行這個程序的輸出結(jié)果是( C )。A. 1B. 30C. 1-2D.死循環(huán)109 若有以下定義,則說法錯誤的

34、是 ( D) 。int a=100,*p=&a ;A. 聲明變量p,其中*表示p是一個指針變量B. 變量p經(jīng)初始化,獲得變量 a的地址C. 變量p只可以指向一個整形變量D. 變量p的值為100110.下面關(guān)于數(shù)組的初始化正確的是( A )。A.char str= a','b','c B.char str2='a','b', 'c ' C.char str23='a('b ' ,' e','d ' ,' e' f'D.char s

35、tr='a','b','c ' 111 .若已定義:int a=0, 1, 2, 3,4,5 , 6, 7, 8, 9, *P=a, i;其中OW i < 9,則對a數(shù)組元素不正確的引用是( D )。A . ap-aB. *(&ai)C. piD a10112.存在定義 inta10,x, *pa; ,若 pa=&a0 ,下列的哪個選項和其他3 個選項不是等價的 ?( A )。A . x = *pa;B.x = *(a+l);C.x = *(pa+1);D.x = a1;113.對數(shù)組名作函數(shù)的參數(shù),下面描述正確的是(B)。

36、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ù)。114關(guān)于靜態(tài)成員的描述中,( B )是錯誤的。A 靜態(tài)成員可分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)。B 靜態(tài)數(shù)據(jù)成員定義后必須在類體內(nèi)進行初始化。C 靜態(tài)數(shù)據(jù)成員初始化不使用其構(gòu)造函數(shù)。D 靜態(tài)數(shù)據(jù)成員函數(shù)中不能直接引用非靜態(tài)成員。115下列關(guān)于構(gòu)造函數(shù)的描述中,錯誤的是(D )。A.構(gòu)造函數(shù)可以設(shè)置默認的參數(shù)B 構(gòu)造函數(shù)在定義類對象的自動執(zhí)行C. 構(gòu)造函數(shù)可以是內(nèi)聯(lián)函數(shù)D構(gòu)造函數(shù)不可以

37、重載116假設(shè) OneClass 為一個類,則該類的拷貝初始化構(gòu)造函數(shù)的聲明語句為(C )。A. OneClass(OneClass p);B. OneClass& (OneClass p);C. OneClass(OneClass & p);D. OneClass (OneClass *p);117.如果類A被說明成類B的友元,U( D )。A. 類A的成員即類B的成員。B. 類B的成員即類A的成員。C. 類A的成員函數(shù)不得訪問類B的成員 。D. 類B不一定是類 A的友元。118、 關(guān)于對象和類的關(guān)系,說法正確的是(B )。A)同屬于一類的對象,具有相同的數(shù)據(jù)成員和成員函數(shù)。

38、B)對象是具體,是類的對象,同其他變量一樣,先定義后使用。C)同一類的不同對象,其具有的操作可不同,具體的操作也不同。D)不同類的對象,可有相同的操作。119、 雙精度浮點型的字節(jié)數(shù)是(D )。A) 4 B )1 C )0 D )8120、下列關(guān)于 C+函數(shù)的說明中正確的是( D )。A)內(nèi)聯(lián)函數(shù)就是定義在另一函數(shù)體內(nèi)部的函數(shù)。B)函數(shù)體的最后一條語句必須是RETURN語句。C)標準C+要求在調(diào)用一個函數(shù)之前,必須先聲明其原型。D)編譯器會根據(jù)函數(shù)的返回值類型和參數(shù)表來區(qū)分函數(shù)的不同重載形式。121、下列關(guān)于虛函數(shù)的說明中,正確的是( B )。A)從虛基類繼承的函數(shù)都是虛函數(shù)。B)虛函數(shù)不得是

39、靜態(tài)成員函數(shù)。C)只能通過指針和引用調(diào)用虛函數(shù)。D)抽象類中的成員函數(shù)都是虛函數(shù)。122、 下列符號中可以用作C+標識符的是(A )。A)_radius B) foobar C) else D) 3room123、 結(jié)構(gòu)化程序設(shè)計所規(guī)定的三種基本控制結(jié)構(gòu)是(C )。A)輸入、處理、輸出C)順序、選擇、循環(huán)124、下列語句中錯誤的是(B)樹形、網(wǎng)形、環(huán)形D)主程序、子程序、函數(shù)B )。A) const int buffer=256;B) const int int temp;C) const double *po int;D) const double *rt=new double(5.5)12

40、5、下列關(guān)于實參和形參說法錯誤的是( D )。A )實參可以是變量、常量、或表達式。B)實參與形參的類型必須一致,否則會發(fā)生“類型不匹配”的錯誤。C)實參對形參的數(shù)據(jù)傳遞是單向傳遞,調(diào)用結(jié)束后,實參單元被釋放。D) 形參必須是變量。126、關(guān)于內(nèi)聯(lián)函數(shù)說法錯誤的是( C )。A )不是任何一個函數(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ù)。127、 關(guān)于保護繼承的說法正確的是(D )。A )基類的公有成員、私有成員可被子類繼承下來,而且性質(zhì)不變。B )基類的公有成員、私有成員可被子類繼

41、承下來,而且性質(zhì)改變?yōu)楸Wo成員。C)基類的公有成員、私有成員可被子類繼承下來,而且性質(zhì)均改變?yōu)樗接谐蓡T。D )基類的公有成員、私有成員可被子類繼承下來,性質(zhì)不變,私有成員不被繼承。 12 8、關(guān)于函數(shù)的返回值說法正確的是( A )。A)由return語句返回時,只帶回一值,其類型在函數(shù)定義時確定。B)其類型由調(diào)用表達式?jīng)Q定。C)函數(shù)可以沒有返回值,這時在函數(shù)定義,函數(shù)的類型說明就沒必要了。D)函數(shù)調(diào)用就要有返回值,否則調(diào)用就沒意義了。129、下列合法的標識符是(C )。A)abde+ B)#KSJF C)67KDJ D)DK3-130、關(guān)于結(jié)構(gòu)化程序設(shè)計方法說法錯誤的是( D )。A )在數(shù)據(jù)

42、處理過程中,采用的是自頂向下、分而治之的方法。B)將整個程序按功能劃分為幾個可獨立編程的子過程模塊。C)以“對象”或“數(shù)據(jù)”為中心。D)數(shù)據(jù)和處理數(shù)據(jù)的過程代碼是分離的、相互獨立的實體。131、運算符重載是對已有的運算符賦予多重含義,因此(C )。A)可以對基本類型(如int類型)的數(shù)據(jù),重新定義“ +”運算符的含義。B)可以改變一個已有運算符的優(yōu)先級和操作數(shù)個數(shù)。C)只能重載C+中已經(jīng)有的運算符,不能定義新運算符。D)C+中已經(jīng)有的所有運算符都可以重載。132、關(guān)于C+程序說法不正確的是( D )。A) C+ 程序由函數(shù)構(gòu)成,但只有一個main()函數(shù)。B)C+程序中main()函數(shù)可以在程

43、序的任何位置。C)C+程序由main()函數(shù)開始執(zhí)行,由 main()結(jié)束執(zhí)行。D)mai n()都是沒有參數(shù)的。133、 已知 a=4,b=6,c=8,d=9,貝廠(a+,b>a+&&c>d)?+d:a<b”的值為(D )。A) 9B)6C)8 D) 0134、 下面有關(guān)重載函數(shù)的說法中正確的是(C ) oA)重載函數(shù)必須具有不同的返回值類型。B)重載函數(shù)形參個數(shù)必須不同。C)重載函數(shù)必須有不同的形參列表。D)重載函數(shù)名可以不同。135、 C+語言的跳轉(zhuǎn)語句中,對于break和continue 說法正確的是( B )。A)break語句只應(yīng)用于循環(huán)體中。B)

44、co nti nue語句只應(yīng)用于循環(huán)體中。C)break是無條件跳轉(zhuǎn)語句,continue不是。D)break和continue的跳轉(zhuǎn)范圍不夠明確,容易產(chǎn)生問題。136、 Iongint的字節(jié)數(shù)是(D )。A ) 4 B ) 1 C ) 0 D ) 8137、下列非法的字符常量是( C )oA)'#'B)' ' C) a'D )'A二、填空:1. C+語言的頭文件與源程序文件擴展名分別是( .h )和(.cpp) o2. 在C+程序中使用基本輸入與輸出流時需要包含的頭文件名是(iostream )。3. 在C+語言中,惟一的一個三目運算運算符是(

45、?:)。4. C+中當(dāng)一個函數(shù)無返回值時,則函數(shù)的類型是( void)o5. 一個類中可以有(多)個構(gòu)造函數(shù),只能有(一)個析構(gòu)函數(shù)。6. 一般情況下,按照面向?qū)ο蟮囊?,把類中的?shù)據(jù)成員(屬性)定義為(私有)權(quán)限, 而把成員函數(shù)(方法)定義為(公有 )權(quán)限.7. 在定義類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的( 構(gòu)造 )函數(shù)初始化對象自折構(gòu) ) 函數(shù) .9.在C+語言中,用轉(zhuǎn)義字符序列(n')或操縱符(endl個換行符。10.表達式 a=a l 表示成增量表達式為(+a)。身. 在撤銷類的對象時 ,C+ 程序?qū)⒆詣诱{(diào)用該對象的(8. 類繼承中 , 缺省的繼承方式是( 私有繼承)11當(dāng)不

46、需要函數(shù)返回任何值時,則應(yīng)把該函數(shù)類型定義為(void )。)表示輸出12用于輸出表達式值的標準輸出流對象是(cout )。,用于從鍵盤上為變量輸人值的標準輸人流對象是( cin )。13、變量分為全局和局部兩種, (全局變量默認初始化為 0 )。變量沒有賦初值時,其 值是不確定的。14、假定類AB中有一個公用屬性的靜態(tài)數(shù)據(jù)成員bb,在類外不通過對象名訪問該成員bb 的寫法為( AB ::bb)。15、類的成員分為數(shù)據(jù)成員和成員函數(shù)_。16、 一個類和對象的關(guān)系,正如基本數(shù)據(jù)類型與該類型的變量一樣,如int x;。17、 對一個類中的數(shù)據(jù)成員的初始化可以通過構(gòu)造函數(shù)中的賦值實現(xiàn),也可以通過構(gòu)造

47、 函數(shù)中的初始化列表實現(xiàn)。18、 類有兩種用法:一種是定義對象即生成類的對象;另一種是通過派生派生 出新的類。19、C+語言提供的多態(tài)機制允許一個派生類繼承多個基類,即使這些基類是相互無關(guān) 的。20、 聲明虛函數(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 fun(); ”定義為一個類

48、 A的友元函數(shù),則應(yīng)在類 A的定義中 加入一條語句:friend void fun ();。26、 運算符函數(shù)中的關(guān)鍵字是operator _,它和運算符一起組成該運算符函數(shù)的函數(shù) 名。27、類中運算符重載一般采用兩種形式:_成員函數(shù)_和_友元函數(shù)_。28、 面向?qū)ο蟪绦蛟O(shè)計的3 大機制為:_封裝性_、_繼承性_和_多態(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、如果一個特定的

49、類型 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ù)的聲明可以放在類的私有部分,也可以放在類的共有部分,它們是沒有區(qū)別的。35、 如果說類B是類A的友元類,則類 B的所有成員函數(shù)都是類A的成員函數(shù)_。36、設(shè) a 和 b 是兩個整型變量, 我們用 a+b 的形式求這兩個變量的和; 設(shè) c 和 d 為浮點型變 量,我們用c+d的形式求這兩個變量的和。顯然運算符“ +”具有不同的用途,這是運算 符重載的例子。37、 對于雙目運算符,若

50、重載為類的成員函數(shù),有1個參數(shù);若重載為友元函數(shù),則有2 個參數(shù)。38、當(dāng)建立 _一個新的對象 _,程序自動調(diào)用該類的構(gòu)造函數(shù)。39、 在C+中有二種參數(shù)傳遞方式:傳值_和_引用。40、模板對處理數(shù)據(jù)的類型的要求不同可以分為兩種類型: _函數(shù)模板 _ 和 _ 類模板 _。41、異常是通過 _檢查( try )_ 、 _拋出( throw )_和_捕捉( catch )_ 來實現(xiàn)的。42、 虛函數(shù)實現(xiàn)了 C+的多態(tài)機制,類實現(xiàn)了 C+啲_封裝機制。43、面向?qū)ο蟪绦蛟O(shè)計的 _繼承 _機制提供了重復(fù)利用程序資源的一種途徑。44、 C+語言程序設(shè)計的三種基本結(jié)構(gòu)是:順序結(jié)構(gòu)_、_選擇結(jié)構(gòu)_、循環(huán)結(jié)構(gòu)

51、_。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=new int 操作,可以得到一個動態(tài)分配整型對象的 _指針 。49、 有說明語句:int *p ;則 (*p)+ 運算首先訪問 _*p_ ,然后使 _*p 的值加 1。50、 C+目標程序經(jīng)編譯鏈接后生成擴展名為exe的可執(zhí)行程序文件。51 16 位計算機中整型占 _2個字節(jié)存儲空間。52. 要在

52、屏幕上顯示 "Hello , world!" 應(yīng)執(zhí)行語句 cout<< "Hello , world!" 。53. 表達式 8&3 的結(jié)果是 _0。54. 作為語句的函數(shù)調(diào)用是通過 函數(shù)的副作用 來體現(xiàn)的。55 . 執(zhí) 行 if (x>=0|x<=0) cout<<"abcd" ; else cout<<"wxyz" ; 屏 幕 上 顯 示 的 是 abcd 。56. 設(shè)一維整型數(shù)組 data 已進行了初始化,則其元素個數(shù)可由操作符 sizeof 通過表達式

53、sizeof(data) / sizeof(int) _計算出來。57. 若一全局變量只允許本程序文件中的函數(shù)使用,則定義它時應(yīng)加上修飾符_ staticO58. 設(shè)有int w34 ;, pw是與數(shù)組名w等價的數(shù)組指針,則pw應(yīng)初始化為 int*4pw = w; 。59. 要使引用pr代表變量char * p;,則pr應(yīng)初始化為 char*& pr = p; 60. 在C+沖封裝性、繼承性和 多態(tài)性61. 假設(shè)int a=1 , b = 2;則表達式 a+-b的值為_2。62. 下面的程序?qū)崿F(xiàn)輸出x, y, z 三個數(shù)中的最大值,請?zhí)钊胝_的內(nèi)容。#include<iostre

54、am.h>void main () int x=5,y=8,z=9, u, v;if_(xu)_ u=x;else u=y;if_ (uv)_ v=u;else v=z ;cout<< ”v=”<<v<<endl;63. C+語言的參數(shù)傳遞機制包括傳值和傳地址兩種,如果調(diào)用函數(shù)時,需要改變實參或者 返回多個值,應(yīng)該采取 _ 傳地址 _ 方式。64. 在C+語言中,訪問一個對象的成員所用的運算符是.,_,訪問一個指針所指向的對象的成員所用的運算符是_ -> _ 。65. C+語言支持的兩種多態(tài)性分別是編譯時的多態(tài)性和運行時的多態(tài)性。66. 設(shè)有如下程序結(jié)構(gòu):class Box;void main()Box A,B,C; 該程序運行時調(diào)用 _3_次構(gòu)造函數(shù);調(diào)用 _3_ 次析構(gòu)函數(shù)。67. 目前,有兩種重要的程序設(shè)計方法

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論