c練習(xí)題帶答案_第1頁(yè)
c練習(xí)題帶答案_第2頁(yè)
c練習(xí)題帶答案_第3頁(yè)
c練習(xí)題帶答案_第4頁(yè)
c練習(xí)題帶答案_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余4頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、選擇題1.C+語(yǔ)言屬于(Q。2.(C)。A)自然語(yǔ)言B)機(jī)器語(yǔ)言C)面向?qū)ο笳Z(yǔ)言 D)匯編語(yǔ)言 下面選項(xiàng)中不屬于面向?qū)ο蟪绦蛟O(shè)計(jì)特征的是3.B)A)繼承性B)多態(tài)性C)相似性D)封裝性 下列情況中,哪一種情況不會(huì)調(diào)用拷貝構(gòu)造函數(shù)(A)用派生類的對(duì)象去初始化基類對(duì)象時(shí)B)將類的一個(gè)對(duì)象賦值給該類的另一個(gè)對(duì)象時(shí)C)函數(shù)的形參是類的對(duì)象,調(diào)用函數(shù)進(jìn)行形參和實(shí)參結(jié)合時(shí)D)函數(shù)的返回值是類的對(duì)象,函數(shù)執(zhí)行返回調(diào)用者時(shí)4.以下哪一關(guān)鍵字可用于重載函數(shù)的區(qū)分(C)D) virtualA)externB) staticC) const5.下列有關(guān)數(shù)組的敘述中,正確的是(B)A)C+中數(shù)組的存儲(chǔ)方式為列優(yōu)先存儲(chǔ)

2、B)數(shù)組名可以作為實(shí)參賦值給指針類型的形參C) 數(shù)組下標(biāo)索引從1開(kāi)始,至數(shù)組長(zhǎng)度n結(jié)束6.D)數(shù)組指針的語(yǔ)法形式為:類型名 *數(shù)組名下標(biāo)表達(dá)式; 下列有關(guān)繼承和派生的敘述中,正確的是 (C)A)派生類不能訪問(wèn)通過(guò)私有繼承的基類的保護(hù)成員B)多繼承的虛基類不能夠?qū)嵗疌)如果基類沒(méi)有默認(rèn)構(gòu)造函數(shù),派生類就應(yīng)當(dāng)聲明帶形參的構(gòu)造函數(shù)7.D)基類的析構(gòu)函數(shù)和虛函數(shù)都不能夠被繼承,需要在派生類中重新實(shí)現(xiàn) 若有下面的函數(shù)調(diào)用:fun(a+b,3,max(n-1,b);其中實(shí)參的個(gè)數(shù)是( A)A) 3B) 4C) 5D) 68.下列關(guān)于 this 指針的說(shuō)法正確的是( B)A)this 指針存在于每個(gè)函數(shù)之

3、中B)在類的非靜態(tài)函數(shù)中 this指針指向調(diào)用該函數(shù)的對(duì)象C)this 指針是指向虛函數(shù)表的指針D)this 指針是指向類的函數(shù)成員的指針9.在下列關(guān)于C+函數(shù)的敘述中,正確的是(C)B)D)每個(gè)函數(shù)都必須返回一個(gè)值函數(shù)不能自己調(diào)用自己A)每個(gè)函數(shù)至少要有一個(gè)參數(shù)C)函數(shù)在被調(diào)用之前必須先聲明 下列運(yùn)算符中,不能重載的是(C)D)->A) &&B) !=C) .下面程序的輸出結(jié)果是(B)#include<iostream>usingnamespacestd;inti=0;10.11.intfun(intn)staticinta=2;a+; returna+n;

4、 voidmain()intk=5;inti=2; k+=fun(i);k+=fun(i); cout<<k; A)13B) 1412. 下面程序的輸出結(jié)果是( #include<iostream> usingnamespacestd; classBase public:virtualvoidf()cout<<C)15C)D)16f0+ ”; voidg()cout<< “ g0+”; ; classDerived:publicBase public: voidf()cout<< “f+ ”; voidg()cout<<

5、“ g+”; ; voidmain()Derivedd;Base*p=&d;p->f();p->g(); A) f+g+B) f0+g+C) f+g0+D) f0+g0+13. 以下程序的輸出結(jié)果是:( D) #include<iostream> usingnamespacestd; intfun(char*s) char*p=s; while(*p!='0')p+; return(p-s);voidmain()cout<<fun("abc")<<endl;A 0B.1C.2D.314. 有如下程序段:

6、inti=1;while(1)i+;if(i=10)break;if(i%2=0)cout<<執(zhí)行這個(gè)程序段輸出字符 *的個(gè)數(shù)是 (C)( C) 使用虛基類可以消除由多繼承產(chǎn)生的二義性 構(gòu)造派生類對(duì)象時(shí),虛基類的構(gòu)造函數(shù)只被調(diào)用一次 聲明 classB:virtualpublicA 說(shuō)明類 B 為虛基類 建立派生類對(duì)象時(shí),首先調(diào)用虛基類的構(gòu)造函數(shù)A. 10B.3 C.4D.515. 下列關(guān)于虛基類的描述中,錯(cuò)誤的是A.B.C.D.16. 有下類定義ClassAChar*a;Public:A():a(0)A(char*aa)/ 把 aa 所指字符串拷貝到 a 所指向的存儲(chǔ)空間 A=;

7、Strcpy(a,aa);A()deletea; 正確的選擇是( A)A.newcharstrlen(aa)+1B.charstrlen(aa)+1C.charstrlen(aa)D.newcharsizeof(aa)-117. 有如下程序: #include<iostream> usingnamespacestd; classTest public: Test() Test()cout<<'#' ; intmain()1.(C)C.36 D.33(C)Testtemp2,*pTemp2;return0;執(zhí)行這個(gè)程序輸出星號(hào)(#)的個(gè)

8、數(shù)為( B)。A) 1B)2 C )3D) 4友元運(yùn)算符obj+被C+編譯器解釋為(D)。A. operator+(obj)B.operator+(obj,0)B. obj.operator+()D.obj.operator+(0)下面程序的運(yùn)行結(jié)果為 (C)#includeclassAintnum;public:A(inti)num=i;A(A&a)num=a.num+;voidprint()cout<<NUM;<p>voidmain()Aa(1),b(a);a.print();b.print();A.11 B.12 C.21 D.22如果類 A 被說(shuō)明成類

9、B 的友元,則 (D) A. 類 A 的成員即類 B 的成員 B. 類 B 的成員即類 A 的成員C. 類A的成員函數(shù)不得訪問(wèn)類B的成員D. 類B不一定是類A的友元 下面程序的運(yùn)行結(jié)果是#include voidmain() intnum=1; int&ref=num; ref=ref+2; cout<<NUM;<p> num=num+3; cout<<REF<<ENDL;<p> A.13B.16下列程序的運(yùn)行結(jié)果為 #include inti=0; classA public:A()i+:;voidmai n()AaHc;c

10、=b: coutvvIvvENDL;A.2B.3C.4D.523.下列字符串中可以用C+語(yǔ)言標(biāo)識(shí)符的是(A)B.foobarD.34varA._1234C. virtua二填空題.5.在面向?qū)ο蠓椒ㄖ校愔g共享屬性和操作的機(jī)制稱為繼承 C+中封裝性、繼承性和多態(tài)性是面向?qū)ο笏枷氲闹饕卣鳌?下列for語(yǔ)句的循環(huán)次數(shù)為 5。for(i nta=0,b=1:b&&a<5:a+):C+程序是從main函數(shù)開(kāi)始執(zhí)行的。派生類構(gòu)造函數(shù)的執(zhí)行順序是先執(zhí)行基類的構(gòu)造函數(shù), 函數(shù),最后執(zhí)行派生類的構(gòu)造函數(shù)。然后執(zhí)行成員對(duì)象的構(gòu)造6.C+語(yǔ)言的基本控制結(jié)構(gòu)為順序結(jié)構(gòu)、選擇結(jié)

11、構(gòu)和循環(huán)結(jié)構(gòu)7.函數(shù)重載要求重載的函數(shù)必須有和原函數(shù)一樣的函數(shù)名8.設(shè)置虛基類的目的是解決二義性問(wèn)題,通過(guò)用關(guān)鍵字virtual表示虛基類。9.語(yǔ)句 cout<< n還可表示為 cout<<ENDL:10.11.若已知a=10,b=20,則表達(dá)式!a<B的值為1友元類的所有成員函數(shù)都是另一個(gè)類的友元函數(shù)三程序填空1.用遞歸法求從1到n的立方和:f(1)=1( n=1)f(n )=f( n-1)+n3( n>1)#in clude<iostream>usingn ames pacestd;in tf(i nt);in tmai n()intn s

12、cout<<"i npu tthe nu mber n:" cinAn;s=f(n); cout<<"Theresultis"<<s<<e ndl;returnO;intf(intn)/遞歸法求立方和函數(shù)if(n=1)return1; elseretumf(n-1)+n*n*n );3.請(qǐng)將下列程序補(bǔ)充完整,使得輸出結(jié)果為"DestructorDerivedDestructorBase ”。#in clude<iostream>usingn ames pacestd;classBasepublic:virtu

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論