




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、高級(jí)語言程序設(shè)計(jì)一、判斷題(錯(cuò)誤的在后面寫“F”,正確的寫“T”,每題1分)1. 程序是描述算法的編程工具。2. 化將函數(shù)模板與某個(gè)具體數(shù)據(jù)類型連用,就產(chǎn)生了模板函數(shù),稱這個(gè)過程為函數(shù)模板實(shí)例化 。 3. C+語言中,用來為對(duì)象初始化的特殊成員函數(shù)稱為構(gòu)造函數(shù);用于在對(duì)象撤銷時(shí)執(zhí)行一些清理任務(wù)的特殊成員函數(shù)稱為析構(gòu)函數(shù)。 4. 逐條翻譯并執(zhí)行的翻譯程序稱為編譯程序 5. 把所有類組織在一個(gè)樹形結(jié)構(gòu)中,這時(shí)所有類,不管它們之間的差別有多大,都有一個(gè)共同的相關(guān)類,這種結(jié)構(gòu)被稱為類樹。類群是由一些彼此密切相關(guān)的類和類族組成的。 6. 如果在定義一個(gè)類時(shí),該類繼承了多個(gè)基類的特征,那么這個(gè)繼承關(guān)系稱為
2、多重繼承。 7. 不同對(duì)象可以調(diào)用相同名稱的函數(shù),并可導(dǎo)致完全相同的行為的現(xiàn)象稱為多態(tài)性。 8. 形式參數(shù)表是用括號(hào)分隔的變量說明列表,變量稱為函數(shù)的形式參數(shù),有時(shí)也簡稱為形參。 9.在C+語言中,只要在聲明函數(shù)原型時(shí)形式參數(shù)的個(gè)數(shù)或者對(duì)應(yīng)的類型不同,兩個(gè)或更多的函數(shù)就可以共用同一個(gè)名字。這種在同一作用域中允許多個(gè)函數(shù)使用同一函數(shù)名的措施被稱為重載。 9. C+的作用域分辨 :可以迫使編譯器“看到”當(dāng)前作用域的外層部分,存取那些被隱藏的名字。這是由作用域分辨操作符實(shí)現(xiàn)的,這一過程叫做作用域分辨。 11 說明函數(shù)原型時(shí)不需要指明每個(gè)函數(shù)參數(shù)的名字,只需要說明每個(gè)參數(shù)的類型和返回值類型
3、就可以了。12 所有的表達(dá)式都有值。 13 程序的編譯是以文件為單位的,因此將程序分到多個(gè)文件中可以減少每次對(duì)程序修改所帶來的編譯工作量。14 類的靜態(tài)數(shù)據(jù)成員需要在定義每個(gè)類的對(duì)象時(shí)進(jìn)行初始化。15 基類中被說明為protected和private的成員只能被其派生類的成員函數(shù)訪問,不能被其它的函數(shù)訪問。 16 當(dāng)將一個(gè)類S定義為另一個(gè)類A的友元類時(shí),類S的所有成員函數(shù)都可以直接訪問類A的所有成員。 17 當(dāng)函數(shù)的返回值是數(shù)組類型的,傳遞的是數(shù)組第一個(gè)元素的地址。18 如果派生類的成員函數(shù)的原型與基類中被定義
4、為虛函數(shù)的成員函數(shù)原型相同,那么,這個(gè)函數(shù)自動(dòng)繼承基類中虛函數(shù)的特性。 19 字符串hello,world”在內(nèi)存中存放時(shí),占用11個(gè)字節(jié)的空間。 20. 用new動(dòng)態(tài)申請(qǐng)的內(nèi)存空間,必須用delete來釋放 。21、變量必須先定義或說明,后說明。 23、常量不能作為左值使用。 23、頭文件中一般存放著變量和常量的定義、函數(shù)的原型以及類的定義。24、類的友元函數(shù)可以直接訪問該類的所有成員。 25、派生類的成員函數(shù)可以直接訪問基類的所有成員。 26、一個(gè)類可以作為另一個(gè)類的友元類。 27、函數(shù)的參數(shù)和返回值類型可以是簡單數(shù)據(jù)類型,也可以是指什、引用、數(shù)組和類。 28、在基類中被說明為
5、虛函數(shù)的類的成員函數(shù)必須在每個(gè)派生類中說明為虛函數(shù),才能具有多態(tài)的特征。 29、下面兩個(gè)語句是等價(jià)的: char str ="hello,world" char str11="hello,world"30、用new動(dòng)態(tài)申請(qǐng)的內(nèi)存是在堆中分配的,而不是在棧中分配的。 31.靜態(tài)聯(lián)編所支持的多態(tài)性稱為編譯時(shí)的多態(tài)性。 32.如果一個(gè)類中至少有一個(gè)實(shí)函數(shù),則稱這個(gè)類為抽象類 。 33.用于在對(duì)象消失時(shí)執(zhí)行一些清理任務(wù)的函數(shù)叫虛函數(shù)。 34. C+源程序文件的缺省擴(kuò)展名為cpp 35. 由C+源程序文件編譯而成的
6、目標(biāo)文件的缺省擴(kuò)展名為lik 36. 由C+目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為obj 37. 編寫C+程序一般需經(jīng)過的幾個(gè)步驟依次是編輯、編譯、連接、調(diào)試 38. 標(biāo)識(shí)符default then while全是保留字 39. 能作為C+程序的基本單位是語句 40. 程序中主函數(shù)的名字為任意標(biāo)識(shí)符 二、填空題(每題3分)1. 假定x=5,y=6,則執(zhí)行表達(dá)式y(tǒng)+=x-計(jì)算后,x和y的值分別為_和_。 2. C+常數(shù)0x145對(duì)應(yīng)的十進(jìn)制值為_。3. C+常數(shù)0345對(duì)應(yīng)的十進(jìn)制值為_。4. 十進(jìn)制常數(shù)245對(duì)應(yīng)的十六進(jìn)制的C+表示為_。5. 十進(jìn)制常數(shù)245對(duì)應(yīng)的八進(jìn)制的C+表示為_。6
7、. signed char類型的值域范圍是_至_之間的整數(shù)。7. int和float類型的數(shù)據(jù)分別占用_和_個(gè)字節(jié)。8. float和double類型的數(shù)據(jù)分別占用_和_個(gè)字節(jié)。9. bool和char類型的數(shù)據(jù)分別占用_和_個(gè)字節(jié)。1 110. unsigned short int和int類型的長度分別為_和_。11. 字符串“Thiss a book.n”的長度為_。12. 字符串“nThiss a pennn”的長度為_。13. 在C+中存儲(chǔ)字符串“abcdef”至少需要_個(gè)字節(jié)。14. 在C+中存儲(chǔ)字符串“a+b=c”至少需要_個(gè)字節(jié)。14. 假定x和y為整型,其值分別為16和5,則x
8、%y和x/y的值分別為_和_。15. 若while循環(huán)的“頭”為”while(i+<=10)”,并且i的初值為0,同時(shí)在循環(huán)體中不會(huì)修改i的值,則循環(huán)體將被重復(fù)執(zhí)行_次后正常結(jié)束。17. 若do循環(huán)的“尾”為”while(+i<10)”,并且i的初值為0,同時(shí)在循環(huán)體中不會(huì)修改i的值,則循環(huán)體將被重復(fù)執(zhí)行_次后正常結(jié)束。18. 當(dāng)在程序中執(zhí)行到_語句時(shí),將結(jié)束本層循環(huán)類語句或switch語句的執(zhí)行。19. 當(dāng)在程序中執(zhí)行到_語句時(shí),將結(jié)束所在循環(huán)語句中循環(huán)體的一次執(zhí)行。20. 在程序中執(zhí)行到_語句時(shí),將結(jié)束所在函數(shù)的執(zhí)行過程,返回到調(diào)用該函數(shù)的位置。21在程序執(zhí)行完_函數(shù)調(diào)用后,將
9、結(jié)束整個(gè)程序的執(zhí)行過程,返回到C+集成開發(fā)窗口。22. 元素類型為int的數(shù)組a10共占用_字節(jié)的存儲(chǔ)空間。23. 元素類型為double的二維數(shù)組a46共占用_字節(jié)的存儲(chǔ)空間。24. 元素類型為char的二維數(shù)組a1030共占用_字節(jié)的存儲(chǔ)空間。25. 存儲(chǔ)字符a和字符串”a”分別需要占用_和_個(gè)字節(jié)。26. 空串的長度為_,存儲(chǔ)它需要占用_個(gè)字節(jié)。27. 字符串”axy=4n”的長度為_。28. 字符串”a:xxk數(shù)據(jù)”的長度為_。29. 用于存儲(chǔ)一個(gè)長度為n的字符串的字符數(shù)組的長度至少為_。30. 若a是一個(gè)字符數(shù)組,則從鍵盤上向該數(shù)組輸入一個(gè)字符串的表達(dá)式為_。31. C+是將源程序_
10、,然后再執(zhí)行,這種翻譯程序稱為編譯程序。 32. 聯(lián)合的若干數(shù)據(jù)成員使用地址_,占據(jù)的內(nèi)存是聯(lián)合中占內(nèi)存最大 的數(shù)據(jù)成員所占用的內(nèi)存。33. 作用域分辨操作符的一般形式為 類名:類標(biāo)識(shí)符 ,作用域分辨不僅可用于類中,而且可以用在_ 時(shí)。34. 將關(guān)鍵詞const寫在 _ 之后, _, 之前,說明該函數(shù)是一個(gè)const成員函數(shù)。35. C+是在 _ 的基礎(chǔ)上,引入 面向?qū)ο?概念而擴(kuò)充形成的 混合型面向?qū)ο?語言。36. 在動(dòng)態(tài)聯(lián)編中,直到 _ 時(shí)才能確定調(diào)用哪個(gè)函數(shù)。靜態(tài)聯(lián)編是在 程序編譯 時(shí)進(jìn)行的。37. 類型轉(zhuǎn)換函數(shù) _ 帶有參數(shù),當(dāng)被派生類繼承并被說明為 _ 時(shí),可以定義多個(gè)轉(zhuǎn)換函數(shù)。3
11、8. 繼承是 _ 的一個(gè)特點(diǎn),繼承支持 _ 類概念。 39. C+的 _ 規(guī)則能保證編譯器調(diào)用正確的成員函數(shù)。 40. 在C+中,聲明構(gòu)造函數(shù)和析構(gòu)函數(shù)時(shí), _使用const或volatile關(guān)鍵詞。 41. 只能用類運(yùn)算符來重載的運(yùn)算符是:_,_,_,_。42. 應(yīng)該養(yǎng)成將所有extern說明放到 _ 中去的習(xí)慣,對(duì)于自己編寫的函數(shù),必須自己給出 _ 說明。43. 結(jié)構(gòu)是 _, 的一種特例,其中成員在缺省情況下是_ 。 44. 當(dāng)使用delete刪除一個(gè)對(duì)象時(shí),delete隱含著對(duì) _ 函數(shù)的一次調(diào)用,如果這個(gè)函數(shù)為虛函數(shù),則這個(gè)調(diào)用采用_聯(lián)編。45. const放在函數(shù)前面使常量成員返回
12、_ 。如果定義一個(gè)const對(duì)象,則只能訪問 該對(duì)象的const 成員函數(shù)。46.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,一切都是圍繞著_ 展開的。 47.析構(gòu)造函數(shù)是和_同名的函數(shù)。 48指向基類的對(duì)象的指針變量也可以指向_的對(duì)象。49若多繼承時(shí),多個(gè)基類中擁有一個(gè)同名的成員,則_用調(diào)整訪問權(quán)限確定對(duì)該成員的訪問50多繼承情況下,派生類的構(gòu)造函數(shù)的執(zhí)行順序取決于_派生類時(shí)所指定的各基類的順序。51構(gòu)造函數(shù)_被繼承,析構(gòu)函數(shù)_被繼承。52_繼承情況下,派生類中對(duì)基類成員的訪問會(huì)出現(xiàn)二義性。解決二義性的方法是_、_和_53垂直訪問時(shí),保護(hù)成員的訪問控制權(quán)限與_成員相同。54派生類可以調(diào)用其_中不具備的數(shù)據(jù)和操作
13、。55利用繼承能夠?qū)崿F(xiàn)_。這種實(shí)現(xiàn)縮短了程序的開發(fā)時(shí)間,促使開發(fā)人員復(fù)用已經(jīng)測(cè)試和調(diào)試好的高質(zhì)量軟件。56當(dāng)撤消一個(gè)含有基類和子對(duì)象成員的派生類對(duì)象時(shí),將首先完成_的析構(gòu)函數(shù)定義體的執(zhí)行,接著完成_的析構(gòu)函數(shù)定義體的執(zhí)行,最后完成_的析構(gòu)函數(shù)定義體的執(zhí)行。57如果類Alpha繼承了類Beta,則類Alpha稱為_類,類Beta稱為_類58對(duì)基類數(shù)據(jù)成員的初始化必須在派生類構(gòu)造函數(shù)中的_處執(zhí)行。59在派生類中使用基類的成員,可以顯示地使用_來使用基類成員60當(dāng)將基類指針轉(zhuǎn)換為派生類指針時(shí),由于編譯器認(rèn)為這種操作是危險(xiǎn)的,所以必須要使用_。61多繼承可以視為是_的擴(kuò)展,派生類及其基類可用一個(gè)_表示
14、。62. 繼承是_的一個(gè)特點(diǎn),繼承支持_類概念。63若需要定義一個(gè)標(biāo)識(shí)符常量,并且使C+能夠進(jìn)行類型檢查,則應(yīng)在定義語句的開始使用保留字 .64邏輯表達(dá)式x>3&&x<10 的相反表達(dá)式為 .65邏輯表達(dá)式a>b |b = =5的相反表達(dá)式為 .66假定一個(gè)二維數(shù)組的定義為”char a56;”,則該數(shù)組所含元素的個(gè)數(shù)為 ,所占存儲(chǔ)空間的字節(jié)數(shù)為 .67變量分為全局和局部兩種, 變量沒有賦初值時(shí),將由系統(tǒng)自動(dòng)置為0.68假定a是一個(gè)一維數(shù)組,則ai對(duì)應(yīng)的存儲(chǔ)地址(以字節(jié)為單位)為 69假定一個(gè)結(jié)構(gòu)類型的定義為”struct Aint a,b;A*c;”, 則該
15、類型的大小為 字節(jié).70假定要訪問一個(gè)結(jié)構(gòu)指針p所指對(duì)象中的b指針成員所指的對(duì)象,則表示方法為 .三、單選題(每題2分,在下列各題的備選答案中,選出一個(gè)正確答案,并將其號(hào)碼填寫在題目后面的括號(hào)內(nèi)。) 1. C+源程序文件的缺省擴(kuò)展名為( )。 A. cpp B. exe C. obj D. lik 2. 由C+源程序文件編譯而成的目標(biāo)文件的缺省擴(kuò)展名為( )。 A. cpp B. exe C. obj D. lik 3. 由C+目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為( )。 A. cpp B. exe C. obj D. lik 4. 編寫C+程序一般需經(jīng)過的幾個(gè)步驟依次是( )。 A.
16、編譯、編輯、連接、調(diào)試 B. 編輯、編譯、連接、調(diào)試 C. 編譯、調(diào)試、編輯、連接 D. 編輯、調(diào)試、編輯、連接 5. 以下標(biāo)識(shí)符中不全是保留字的是( )。 A. case for int B. default then while C. bool class long D. goto return char 6. 能作為C+程序的基本單位是( )。 A. 字符 B. 語句 C. 函數(shù) D. 源程序文件 7. 程序中主函數(shù)的名字為( )。 A. main B. MAIN C. Main D. 任意標(biāo)識(shí)符 8. C+程序的基本模塊為( )。 A. 表達(dá)式 B. 標(biāo)識(shí)符 C. 語句 D. 函數(shù) 9
17、. 可用作C+語言用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是( )。A. void define +WORDB. a3_b3 _123 YNC. for -abc CaseD. 2a DO sizeof 10. 存儲(chǔ)以下數(shù)據(jù),占用存儲(chǔ)字節(jié)最多的是( )。 A. 0 B. 0 C. “0” D. 0.0 11. 程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間應(yīng)使用( )符號(hào)作為分隔符。 A. 空格或逗號(hào) B. 逗號(hào)或回車 C. 逗號(hào)或分號(hào) D. 空格或回車 12. 設(shè)”int a=12;”,則執(zhí)行完語句”a+=a*a;”后,a的值是( )。 A. 12 B. 144 C. 156 D. 288 13. 假設(shè)
18、在程序中 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/c 14. 設(shè)”int a=15,b=26;”,則”cout<<(a,b);”的輸出結(jié)果是( )。A. 15 B. 26,15 C. 15,26 D. 26 15. 設(shè)x是一個(gè)bool型的邏輯量,y的值為10,則表達(dá)式 x && y的值為( )。 A. 1 B. 0 C. 與x值相同 D. 與x值相反 16. x>0 && x<=10的
19、相反表達(dá)式為( )。A. x<=0 | x>10 B. x<=0 && x>10C. x<=0 | x<=10 D. x>0 && x>10 17. x>0 | y=5的相反表達(dá)式為( )。A. x<=0 | y!=5 B. x<=0 && y!=5C. x>0 | y!=5 D. x>0 && y=5 18設(shè)x和y均為bool量,則x && y為真的條件是( )。 A. 它們均為真 B. 其中一個(gè)為真 C. 它們均為假 D. 其中一個(gè)為
20、假 19設(shè)x和y均為bool量,則x | y為假的條件是( )。 A. 它們均為真 B. 其中一個(gè)為真 C. 它們均為假 D. 其中一個(gè)為假 20. 字符串”a+b=12n”的長度為( )。 A. 6 B. 7 C. 8 D. 9 21. 假定下列x和y均為int型變量,則不正確的賦值為( )。 A. x+=y+ B. x+=y+ C. x=+y D. +x=+y 22. 下列的符號(hào)常量定義中,錯(cuò)誤的定義是( )。 A. const M=10; B. const int M=20; C. const char ch; D. const bool mark=true; 23. 循環(huán)語句“for(
21、int i=0; i<n; i+) cout<<i*i<< ;”中循環(huán)體執(zhí)行的次數(shù)為( )。 A. 1 B. n-1 C. n D. n+124. 在下面循環(huán)語句中循環(huán)體執(zhí)行的次數(shù)為( )。 for(int i=0; i<n; i+) if(i>n/2) break; A. n/2 B. n/2+1 C. n/2-1 D. n-1 25. 在下面循環(huán)語句中內(nèi)層循環(huán)體S語句的執(zhí)行總次數(shù)為( )。 for(int i=0; i<n; i+) for(int j=i; j<n; j+) S; A. n2 B. (n+1)/2 C. n(n-1)/
22、2 D. n(n+1)/2 26. 在下面循環(huán)語句中循環(huán)體執(zhí)行的次數(shù)為( )。 int i=0,s=0; while(s<20) i+; s+=i; A. 4 B. 5 C. 6 D. 727. 在下面循環(huán)語句中循環(huán)體執(zhí)行的次數(shù)為( )。 int i=0; do i+; while(i*i<10); A. 4 B. 3 C. 5 D. 2 28. 當(dāng)處理特定問題時(shí)的循環(huán)次數(shù)已知時(shí),通常采用( )來解決。 A. for循環(huán) B. while循環(huán) C. do循環(huán) D. switch語句 29. 循環(huán)體至少被執(zhí)行一次的語句為( )。 A. for循環(huán) B. while循環(huán) C. do循環(huán)
23、 D. 任一種循環(huán) 30. switch語句能夠改寫為( )語句。 A. for B. if C. do D. while 31. do語句能夠改寫為( )語句。 A. 復(fù)合 B. if C. switch D. while 32. 在下面的一維數(shù)組定義中,哪一個(gè)有語法錯(cuò)誤。( ) A. int a=1,2,3; B. int a10=0; C. int a; D. int a5; 33. 在下面的字符數(shù)組定義中,哪一個(gè)有語法錯(cuò)誤。( )。 A. char a20=”abcdefg”; B. char a=”x+y=55.”; C. char a15; D. char a10=5; 34. 在
24、下面的二維數(shù)組定義中,正確的是( )。 A. int a5; B. int a5; C. int a3=1,3,5,2; D. int a(10); 35. 假定一個(gè)二維數(shù)組的定義語句為“int a34=3,4,2,8,6;”,則元素a12的值為( )。 A. 2 B. 4 C. 6 D. 8 36. 假定一個(gè)二維數(shù)組的定義語句為“int a34=3,4,2,8,6;”,則元素a21的值為( )。 A. 0 B. 4 C. 8 D. 6 37. 若定義了函數(shù) double *function(), 則函數(shù)function的返回值為( )。 A. 實(shí)數(shù)型 B.實(shí)數(shù)的地址 C.指向函數(shù)的指針 D.
25、函數(shù)的地址 38. 以下說法中正確的是( )。 A. C+程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行 B. C+程序總是從main函數(shù)開始執(zhí)行 C. C+函數(shù)必須有返回值,否則不能使用函數(shù) D. C+程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)程序文件中 39. 以下敘述中不正確的是( )。 A. 在一個(gè)函數(shù)中,可以有多條return語句 B. 函數(shù)的定義不能嵌套,但函數(shù)的調(diào)用可以嵌套 C. 函數(shù)必須有返回值 D. 不同的函數(shù)中可以使用相同名字的變量 40. 函數(shù)重載是指( )。 A. 兩個(gè)或兩個(gè)以上的函數(shù)取相同的函數(shù)名,但形參的個(gè)數(shù)或類型不同 B. 兩個(gè)以上的函數(shù)取相同的名字和具有相同的參數(shù)個(gè)數(shù),但形參
26、的類型可以不同 C. 兩個(gè)以上的函數(shù)名字不同,但形參的個(gè)數(shù)或類型相同 D. 兩個(gè)以上的函數(shù)取相同的函數(shù)名,并且函數(shù)的返回類型相同 41. 以下關(guān)于函數(shù)模板敘述正確的是( )。 A. 函數(shù)模板也是一個(gè)具體類型的函數(shù) B. 函數(shù)模板的類型參數(shù)與函數(shù)的參數(shù)是同一個(gè)概念 C. 通過使用不同的類型參數(shù),函數(shù)模板可以生成不同類型的函數(shù) D. 用函數(shù)模板定義的函數(shù)沒有類型 42. 下列( )的調(diào)用方式是引用調(diào)用。 A. 形參和實(shí)參都是變量 B.形參是指針,實(shí)參是地址值 C. 形參是引用,實(shí)參是變量 D.形參是變量,實(shí)參是地址值 43. 為了提高程序的運(yùn)行速度,可將不太復(fù)雜的功能用函數(shù)實(shí)現(xiàn),此函數(shù)應(yīng)選擇( )
27、。 A. 內(nèi)聯(lián)函數(shù) B.重載函數(shù) C.遞歸函數(shù) D.函數(shù)模板 44. 函數(shù)原型語句正確的是( )。 A. int Function(void a); B.void Function (int); C. int Function(a); D.void int(double a); 45. C+中函數(shù)返回值的類型是由( )決定的。 A. return語句中表達(dá)式的類型 B.該函數(shù)定義時(shí)的類型 C.調(diào)用函數(shù)時(shí)的調(diào)用語句 D.系統(tǒng)根據(jù)結(jié)果 46. 以下函數(shù)的返回結(jié)果是( )。 int function(char *x) char *p=x; while(*p+); return(p-x-1); A.
28、求字符串的長度 B.將字符串x連接到字符串p后面 C. 將字符串x復(fù)制到字符串p中 D.將字符串x反向存放 47. 函數(shù)調(diào)用func(exp1,exp2),(exp3,exp4,exp5)中所含實(shí)參的個(gè)數(shù)為( )個(gè)。 A.1 B.2 C. 4 D. 5 48. 設(shè)有如下函數(shù)定義 int f(char *s) char *p=s; while(*p!=0) p+; return(p-s); 在主函數(shù)中用cout<<f(“good”)調(diào)用上述函數(shù), 則輸出結(jié)果為( )。 A. 3 B. 4 C. 5 D. 6 49. 以下正確的函數(shù)原型語句是( )。 A. double fun(int
29、 x,int y) B. double fun(int x;int y) C. double fun(int,int); D. double fun(int x,y); 50. 以下正確的說法是( )。 A. 用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,必須重新定義 B. 用戶可以重新定義標(biāo)準(zhǔn)庫函數(shù),若如此,該函數(shù)將失去原有含義 C. 系統(tǒng)不允許用戶重新定義標(biāo)準(zhǔn)庫函數(shù) D. 用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,不必使用預(yù)編譯命令將該函數(shù)所在文件包括到用戶源文件中 51. 函數(shù)調(diào)用不可以( )。 A. 出現(xiàn)在一個(gè)表達(dá)式中 B. 出現(xiàn)在執(zhí)行語句中 C. 作為一個(gè)函數(shù)的實(shí)參 D. 作為一個(gè)函數(shù)的形參 52. 以下正確的描述是( )。
30、A. 函數(shù)的定義可以嵌套,函數(shù)的調(diào)用不可以嵌套 B. 函數(shù)的定義不可以嵌套,函數(shù)的調(diào)用可以嵌套 C. 函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套 D. 函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套 53. 若用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,傳遞給形參的是( )。 A. 數(shù)組的首地址 B. 數(shù)組中第一個(gè)元素的值 C. 數(shù)組全部元素的值 D. 數(shù)組元素的個(gè)數(shù) 54. 以下錯(cuò)誤的描述是( )。 A. 被調(diào)用函數(shù)中可以不用return語句 B. 被調(diào)用函數(shù)中可以用多個(gè)return語句 C. 被調(diào)用函數(shù)中,如果有返回值,就一定要有return語句 D. 被調(diào)用函數(shù)中,一個(gè)return語句可返回多個(gè)值給調(diào)用函數(shù) 55. 以下正確
31、的描述是( )。 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è)置 56. 采用重載函數(shù)的目的是( )。 A. 實(shí)現(xiàn)共享 B. 減少空間 C. 提高速度 D. 使用方便,提高可讀性 57. 將兩個(gè)字符串連接起來組成一個(gè)字符串時(shí),選用( )函數(shù)。 A. strlen() B. strcap() C. strcat() D. strcmp() 58. 以下敘述中正確的是( )。 A. 使用#define可以為常量定義一個(gè)名字,該名字在程序中可以再賦另外的值 B. 使用const定義的
32、常量名有類型之分,其值在程序運(yùn)行時(shí)是不可改變的 C. 在程序中使用內(nèi)聯(lián)函數(shù)使程序的可讀性變差 D. 在定義函數(shù)時(shí)可以在形參表的任何位置給出缺省形參值 59. 下面的標(biāo)識(shí)符中,( )是文件級(jí)作用域。 A. 函數(shù)形參 B.語句標(biāo)號(hào) C.外部靜態(tài)類標(biāo)識(shí)符 D.自動(dòng)類標(biāo)識(shí)符 60. 以下敘述不正確的是( )。 A. 宏替換不占用運(yùn)行時(shí)間 B. 宏名無類型 C. 宏替換只是字符替換 D. 宏名必須用大寫字母表示 61. C+語言的編譯系統(tǒng)對(duì)宏命令的處理是( )。 A. 在程序運(yùn)行時(shí)進(jìn)行 B. 在程序連接時(shí)進(jìn)行 C. 和C+程序的其它語句同時(shí)進(jìn)行編譯 D. 在對(duì)源程序中其它成分正式編譯之前進(jìn)行 62. 當(dāng)
33、#include后面的文件名用雙引號(hào)括起來時(shí),尋找被包含文件的方式是( )。 A. 直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 B. 先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 C. 僅僅搜索源程序所在目錄 D. 搜索當(dāng)前邏輯盤上的所有目錄 63. 當(dāng)#include后面的文件名用尖括號(hào)括起來時(shí),尋找被包含文件的方式是( )。 A. 直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 B. 先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 C. 僅僅搜索源程序所在目錄 D. 搜索當(dāng)前邏輯盤上的所有目錄 64. 在下面存儲(chǔ)類中, ( ) 對(duì)象的可見性與生存期不一致。 A. 外部類 B. 自動(dòng)類 C. 內(nèi)部
34、靜態(tài)類 D. 寄存器類 65. 在下面存儲(chǔ)類中,( )的對(duì)象不是局部變量。 A. 外部靜態(tài)類 B. 自動(dòng)類 C. 函數(shù)形參 D. 寄存器類 66. 關(guān)于局部變量,下面說法正確的是( )。 A. 定義該變量的程序文件中的函數(shù)都可以訪問 B. 定義該變量的函數(shù)中的定義處以下的任何語句都可以訪問 C. 定義該變量的復(fù)合語句中的定義處以下的任何語句都可以訪問 D. 定義該變量的函數(shù)中的定義處以上的任何語句都可以訪問 67. 文件包含命令中被包含的文件的擴(kuò)展名( )。 A. 必須是.h B. 不能是.h C. 可以是.h或.cpp D. 必須是.cpp 68. 預(yù)處理命令在程序中都是以( )符號(hào)開頭的。
35、 A. * B. # C. & D. 69. 設(shè)array為一個(gè)數(shù)組,則表達(dá)式sizeof(array)/sizeof(array0)的結(jié)果為( )。 A. array數(shù)組首地址 B. array數(shù)組中元素個(gè)數(shù) C. array數(shù)組中每個(gè)元素所占的字節(jié)數(shù) D. array數(shù)組占的總字節(jié)數(shù) 70. 用new運(yùn)算符創(chuàng)建一個(gè)含10個(gè)元素的一維整型數(shù)組的正確語句是( )。 A. int *p=new a10; B. int *p=new float10; C. int *p=new int10; D. int *p=new int10=1,2,3,4,5 71. 下列給字符數(shù)組賦初值時(shí),正確的
36、是( )。 A. char s1=”abcdef”; B. char s24=”abcd”; C. char s323=“abc”,”xyz”; D. char s44=a,x,s,t; 72. 設(shè)有定義“static int data56;”,設(shè)該數(shù)組在靜態(tài)存儲(chǔ)區(qū)中的起始地址為十進(jìn)制的100,若每個(gè)int型數(shù)占4個(gè)字節(jié),則數(shù)組元素data23的地址為( )。 A. 115 B.124 C.130 D.160 73. 假定變量m定義為“int m=7;”,則定義變量p的正確語句為( )。 A. int p=&m; B. int *p=&m; C. int &p=*m;
37、D. int *p=m; 74. 假定k是一個(gè)double類型的變量,則關(guān)于變量p的正確定義語句為( )。 A. double p=&k; B. int *p=&k; C. double &p=*k; D. char *p=”Thank you!”; 75. 變量s的定義為“char *s=”Hello world!”;”,要使變量p指向s所指向的同一個(gè)字符串,則應(yīng)選取( )。 A. char *p=s; B. char *p=&s; C. char *p;p=*s; D. char *p; p=&s; 76. 關(guān)于void 指針,下列說法正確的是( )
38、。 A. void 指針就是未指向任何數(shù)據(jù)的指針 B. void 指針就是已定義而未初始化的指針 C. 指向任何類型數(shù)據(jù)的指針可直接賦值給一個(gè)void 指針 D. void 指針值可直接賦給一個(gè)非void 指針 77. 假定一條定義語句為“int a10, x, *pa=a;”,若要把數(shù)組a中下標(biāo)為3的元素值賦給x,則不正確的語句為( )。 A. x=pa3; B. x=*(a+3); C. x=a3; D. x=*pa+3; 78. 假定有定義“int b10; int *pb;”,則不正確的賦值語句為( )。 A. pb=b; B. pb=&b0; C. *pb=new int;
39、D. pb=b5; 79. 假定p是具有double類型的指針變量,則表達(dá)式+p使p的值(以字節(jié)為單位)增加( )。 A. 1 B. 4 C. sizeof(double) D. sizeof(p) 80. 假定p指向的字符串為”string”,則cout<<p+3的輸出結(jié)果為( )。 A. string B. ring C. ing D. i四、問答題(每題10分)1. 為什么稱C+語言是混合型面向?qū)ο蟮恼Z言?2. 下面是一個(gè)聯(lián)合的定義:Class CU union int ivalue; float fvalue; /;這是一個(gè)什么聯(lián)合的說明?它說明ivalue和fvalue具
40、有什么關(guān)系?3. 什么是C+的多態(tài)性?4. 如何通過抽象形成“類”的概念?類的概念來自于什么過程?5. 下面是類C的定義:class C : public A, private B private: int c; public: void setC(int x, int y )c=x; setB(y); void showC( )showB( ); cout << c << endl; ;討論類C屬于何種方式的繼承及其派生方法對(duì)訪問基類成員的影響。 6. C+ 的流庫預(yù)定義了哪幾個(gè)流?與這幾個(gè)流所聯(lián)結(jié)的具體設(shè)備是什么?7. 在使用C+時(shí),是否應(yīng)仍然保持C語言的習(xí)慣及思維
41、方式?為什么?8. C+中有哪些機(jī)制可以實(shí)現(xiàn)命名常量? 9. 簡述模板類的動(dòng)態(tài)特征。10 .簡述靜態(tài)成員的特性,然后就作用域與全局變量進(jìn)行比較?11. 用指針或引用調(diào)用虛函數(shù)與通過對(duì)象訪問虛函數(shù)的區(qū)別是?12. 多重繼承的構(gòu)造順序一般可分為4步,下面給出這4個(gè)步驟:13. 在C+中,應(yīng)該使用什么語句來動(dòng)態(tài)分配和釋放內(nèi)存? 14. 下面的程序的正確的輸出結(jié)果是什么?#include <iostream.h>#include <string.h>class basepublic: virtual char * fun(void)const=0;char * base:fun
42、(void)constreturn "base"class derived1:virtual public basepublic: char * fun(void)constreturn "derived1" ;class derived2:virtual public basepublic: char * fun(void)const return "derived2" ;class subderived:public derived1,public derived2public: char * fun(void)constchar
43、 * pch;pch=new charstrlen(derived1:fun()+strlen(derived2:fun()+1;strcpy(pch,derived1:fun();strcat(pch,derived2:fun();return pch; ;void main(void) base * pb; pb=new derived1; cout<<pb->fun()<<endl; pb=new derived2; cout<<pb->fun()<<endl; pb=new subderived; cout<<pb
44、->fun()<<endl; 15. 目前推薦的C+標(biāo)準(zhǔn)十分虛構(gòu)造函數(shù)?16. 友元運(yùn)算符obj會(huì)被C+編譯器解釋為什么? 17.寫出下面程序的運(yùn)行結(jié)果 。#include <iostream.h>#include <iomanip.h>void print(float a,int count,int width);void main(void) float f2=1.0f,10.0f; cout<<"Default numeric format:"<<endl; print(f,2,10); cout<<"Setting ios:showpoint:"<<endl; cout.setf(ios:showpoint); print(f,2,10); cout.unsetf(ios:showpoint); cout<<"Setting ios:scientific:"<<endl; cout.setf(ios:scientific); prin
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 海寧廠房搬遷協(xié)議書范本
- 員工保密價(jià)格協(xié)議書范本
- 創(chuàng)新型企業(yè)財(cái)務(wù)總監(jiān)股權(quán)激勵(lì)聘用合同模板
- 車輛質(zhì)押與物流運(yùn)輸一體化合同
- 海鮮餐廳品牌合作經(jīng)營授權(quán)合同
- 農(nóng)村集體菜地領(lǐng)種與社區(qū)服務(wù)共享合同
- 和同學(xué)的協(xié)議書范本
- 美食街餐飲加盟合作協(xié)議范本
- 礦山采礦權(quán)抵押股權(quán)融資合同范本
- 貨物運(yùn)輸合同模板
- 2025年 云南省危險(xiǎn)化學(xué)品經(jīng)營單位安全管理人員考試練習(xí)題附答案
- 2024-2025學(xué)年四年級(jí)(下)期末數(shù)學(xué)試卷及答案西師大版2
- 2025-2030年中國高導(dǎo)磁芯行業(yè)深度研究分析報(bào)告
- 遠(yuǎn)程胎心監(jiān)護(hù)數(shù)據(jù)解讀
- 2025年 道路運(yùn)輸企業(yè)主要負(fù)責(zé)人考試模擬試卷(100題)附答案
- 2025至2030中國執(zhí)法系統(tǒng)行業(yè)經(jīng)營效益及前景運(yùn)行態(tài)勢(shì)分析報(bào)告
- 2025年全國法醫(yī)專項(xiàng)技術(shù)考試試題及答案
- 供應(yīng)鏈公司展會(huì)策劃方案
- 南通市崇川區(qū)招聘 社區(qū)工作者筆試真題2024
- 2025年寧夏銀川市中考?xì)v史三模試卷(含答案)
- 【藝恩】出游趨勢(shì)洞察報(bào)告
評(píng)論
0/150
提交評(píng)論