版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
C程序設(shè)計題庫及答案(精簡)【章節(jié)】第1章C++基礎(chǔ)知識【知識點】1、 C++程序的構(gòu)成與書寫形式;2、 基本數(shù)據(jù)類型,常量、變量和表達式3、 C++的標準輸入輸出【單選題】1、在C++中,源程序變?yōu)榭蓤?zhí)行程序的正確順序應(yīng)該是()。A.編輯、鏈接、編譯、執(zhí)行B.編輯、編譯、鏈接、執(zhí)行C.編譯、編輯、鏈接、執(zhí)行D.編譯、鏈接、編輯、執(zhí)行答案:B2、 要把高級語言編寫的源程序轉(zhuǎn)換為目標程序,需要使用()。 A.編輯程序 B.驅(qū)動程序 C.調(diào)試程序 D.編譯程序答案:D3、下列關(guān)于C++與C語言的關(guān)系描述中,錯誤的是()。 A. C語言是C++語言的一個子集 B. C++與C語言是兼容的 C. C++對C語言進行了一些改進 D. C++和C語言都是面向?qū)ο蟮拇鸢福篋4、下面為使用面向?qū)ο笳Z言的正確理由是()。 A. 面向?qū)ο蟪绦蛴扇N基本結(jié)構(gòu)組成,分別是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu) B. 程序語句比面向過程語言簡單 C. 面向?qū)ο蟪绦蛟O(shè)計可以設(shè)計為自行修改錯誤 D. 面向?qū)ο蟪绦蚝苋菀赘拍罨鸢福篋5、以下選項中,合法的用戶標識符是()。 A. long B. _2Test C. 3Dmax D. A.dat答案:B6、下列描述中正確的是()。 A. 不是每個C++程序都必須包含預(yù)處理命令#include B. C++程序必須有return語句 C. C++程序中的變量必須定義在主程序內(nèi)部 D. C++程序中所使用的符號常量可以不進行定義答案:AC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第1頁。7、C++源程序文件的擴展名為()。C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第1頁。 A. .CPP B. .C C. .DLL D. .EXE答案:A8、cout是I0流庫預(yù)定義的()。 A. 類 B. 對象 C. 包含文件 D. 常量答案:B9、 C++對C語言作了很多改進,即從面向過程變成為面向?qū)ο蟮闹饕蚴?)。 A. 增加了一些新的運算符 B. 允許函數(shù)重載,并允許設(shè)置缺省參數(shù) C. 規(guī)定函數(shù)說明符必須用原型 D. 引進了類和對象的概念答案:D10、下列選項中,()是不合法的標識符. A. Program B. Obj23 C. double D. B_C_D答案:C11、下列標識符中,不合法的用戶標識符為()。 A. a~! B. _int C. a_10 D. PAd答案:A12、只能向終端輸出一個字符的函數(shù)是()。A.pringf函數(shù)B.putchar函數(shù)C.getchar函數(shù)D.scanf函數(shù)答案:B13、如果有整型量intx=5,執(zhí)行情況x+=1.9后x的值為()。 A. 6 B. 7 C. 結(jié)果不確定 D. 表達式非法答案:A14、已知a=5,b=3,表達式a+=a*=++b*3的值為()。 A. 40C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第2頁。 B. 80C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第2頁。 C. 100 D. 120答案:D20、在C++語言中,自定義的標識符()。 A. 能使用關(guān)鍵字并且不區(qū)分大小寫 B. 不能使用關(guān)鍵字并且不區(qū)分大小寫 C. 能使用關(guān)鍵字并且區(qū)分大小寫 D. 不能使用關(guān)鍵字并且區(qū)分大小寫答案:D32、C++語言程序的基本單位是()。 A. 程序行 B. 語句 C. 函數(shù) D. 字符答案:B38、下列符號屬于c++語言用戶標識符的是()。A.DOB.ifC.voidD.switch答案:A39、任意一個類,析構(gòu)函數(shù)的個數(shù)最多是()。A.不限個數(shù)B.1C.2D.3答案:B【章節(jié)】第3章函數(shù)【知識點】1、C++函數(shù)的相關(guān)知識2、函數(shù)定義與函數(shù)的調(diào)用3、內(nèi)聯(lián)函數(shù)與函數(shù)重載【單選題】1、若有以下函數(shù)調(diào)用語句,在此函數(shù)調(diào)用語句中實參的個數(shù)是()。fun(a+b,(y=10,y),fun(n,k,d)); A. 3 B. 4 C. 5 D. 6答案:A2、以下程序的運行結(jié)果是()。func(inta,intb)C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第3頁。{staticintm,i=2;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第3頁。i+=m+1;m=i+a+b;return(m);}intmain(){intk=4,m=1,p;p=func(k,m);cout<<p<<endl;p=func(k,m);cout<<p<<endl;}A.8,17B. 8,16C.8,20D.8,8答案:A3.以下函數(shù)調(diào)用語句中,含有的實參個數(shù)是().func(rec1,rec2+1,(rec3,rec4)); A. 3 B. 4 C. 5 D. 有語法錯誤[答案] A4.分析如下程序:#include<iostream>intf(intb[],intn){inti,r=1;for(i=0;i<=n;i++)r=r*b[i];returnr;}voidmain(){intx,a[]={2,3,4,5,6,7,8,9};x=f(a,3);cout<<x<<endl;}上面程序的輸出結(jié)果是()。 A.720 B.120 C.24 D.6答案:B5、下列函數(shù)參數(shù)默認值定義錯誤的是()。C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第4頁。 A. Fun(intx,inty=0)C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第4頁。 B. Fun(intx=100) C. Fun(intx=0,inty) D. Fun(intx=f())(假定函數(shù)f()已經(jīng)定義)答案:C6、在函數(shù)定義前加上關(guān)鍵字“inline”表示該函數(shù)被定義為()。 A. 重載函數(shù) B. 內(nèi)聯(lián)函數(shù) C. 成員函數(shù) D. 普通函數(shù)答案:B7、一個函數(shù)功能不太復(fù)雜,但要求被頻繁調(diào)用,選用()。 A. 內(nèi)聯(lián)函數(shù) B. 重載函數(shù) C. 遞歸函數(shù) D. 嵌套函數(shù)答案:A8、下面有關(guān)重載函數(shù)的說法中正確的是()。 A. 重載函數(shù)必須具有不同的返回值類型 B. 重載函數(shù)形參個數(shù)必須不同 C. 重載函數(shù)必須有不同的形參列表 D. 重載函數(shù)名可以不同答案:C9、在C++語言中,對函數(shù)參數(shù)默認值描述正確的是()。 A. 函數(shù)參數(shù)的默認值只能設(shè)定一個 B. 一個函數(shù)的參數(shù)若有多個,則參數(shù)默認值的設(shè)定可以不連續(xù) C. 函數(shù)必須設(shè)定默認值 D. 在設(shè)定參數(shù)的默認值后,該參數(shù)后面定義的所有參數(shù)都必須設(shè)定默認值答案:D10、考慮函數(shù)原型voidtest(inta,intb=7,charz='*'),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是 A. test(5); B. test(5,8); C. test(6,'#'); D. test(0,0,'*');答案:C11、以下對C++函數(shù)的有關(guān)描述中,正確的是()。 A. C調(diào)用函數(shù)時,只能把實參的值傳給形參,形參的值不能傳遞給實參 B. C++函數(shù)既可以嵌套定義又可以遞歸調(diào)用 C. 函數(shù)必須有返回值,否則不能使用函數(shù) D. C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一源程序文件中答案:A12、在C++語言中函數(shù)返回值的類型是由()決定的。 A. 調(diào)用該函數(shù)時系統(tǒng)臨時C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第5頁。 B. return語句中的表達式類型C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第5頁。 C. 定義該函數(shù)時所指定的函數(shù)類型 D. 調(diào)用該函數(shù)時的主調(diào)函數(shù)類型答案:C13、以下程序的輸出結(jié)果是()。intfunc(inta,intb){returna+b;}intmain(){intx=6,y=7,z=8,r;r=func(func(x,y),z--);cout<<r<<endl;} A. 15 B. 20 C. 21 D. 31答案:C14、以下程序的輸出結(jié)果是()。voidfun(inta,intb,intc){a=456;b=567;c=678;}intmain(){intx=10,y=20,z=30;fun(x,y,z);cout<<z<<”,”<<y<<”,”<<x<<endl;} A. 30,20,10 B. 10,20,30 C. 456,567,678 D. 678,567,456答案:A15、C++語言中,形參與實參之間的數(shù)據(jù)傳遞方式是()。 A. 只能按值傳遞 B. 只能按地址傳遞 C. 既可以按值傳遞也可以按地址傳遞 D. 以上說法都不對答案:C16、分析以下程序:#include<iostream>voidfun(intnum){cout<<num<<endl;}voidfun(charch){cout<<(ch+1)<<endl;}intmain(){fun('A');return0;}C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第6頁。以上程序的輸出結(jié)果是()。C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第6頁。 A. 65 B. 66 C. A D. B答案:B17、一個函數(shù)為voidf(intx,chary=‘a(chǎn)’),另一個函數(shù)為voidf(int),則它們()。 A. 不能在同一程序塊中定義 B. 可以在同一個程序塊中定義并可重載 C. 可以在同一個程序塊中定義,但不可以重載 D. 以上說法均不正確答案:A18、函數(shù)定義為Fun(int&i),變量定義n=100,則下面調(diào)用正確的是()。 A. Fun(20) B. Fun(20+n) C. Fun(n) D. Fun(&n)答案:C19、當一個函數(shù)無返回值時,函數(shù)的類型應(yīng)為()。 A. 任意 B. void C. int D. char答案:B20、下列帶缺省值參數(shù)的函數(shù)說明中,正確的說明是()。 A. intFun(intx,inty=2,intz=3); B. intFun(intx=1,inty,intz=3); C. intFun(intx,inty=2,intz); D. intFun(intx=1,inty,intz=3);答案:A21、下列函數(shù)參數(shù)默認值定義錯誤的是()。 A. Fun(intx,inty=0) B. Fun(intx=100) C. Fun(intx=0,inty) D. Fun(intx=f())(假定函數(shù)f()已經(jīng)定義)答案:C22、在函數(shù)定義前加上關(guān)鍵字“inline”表示該函數(shù)被定義為()。 A. 重載函數(shù) B. 內(nèi)聯(lián)函數(shù) C. 成員函數(shù) D. 普通函數(shù)答案:B23、一個函數(shù)功能不太復(fù)雜,但要求被頻繁調(diào)用,選用()。C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第7頁。 A. 內(nèi)聯(lián)函數(shù)C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第7頁。 B. 重載函數(shù) C. 遞歸函數(shù) D. 嵌套函數(shù)答案:A24、下面有關(guān)重載函數(shù)的說法中正確的是()。 A. 重載函數(shù)必須具有不同的返回值類型 B. 重載函數(shù)形參個數(shù)必須不同 C. 重載函數(shù)必須有不同的形參列表 D. 重載函數(shù)名可以不同答案:C25、在C++語言中,對函數(shù)參數(shù)默認值描述正確的是()。 A. 函數(shù)參數(shù)的默認值只能設(shè)定一個 B. 一個函數(shù)的參數(shù)若有多個,則參數(shù)默認值的設(shè)定可以不連續(xù) C. 函數(shù)必須設(shè)定默認值 D. 在設(shè)定參數(shù)的默認值后,該參數(shù)后面定義的所有參數(shù)都必須設(shè)定默認值答案:D26、考慮函數(shù)原型voidtest(inta,intb=7,charz='*'),下面的函數(shù)調(diào)用中,屬于不合法調(diào)用的是()。 A. test(5); B. test(5,8); C. test(6,'#'); D. test(0,0,'*');答案:C27、以下對C++函數(shù)的有關(guān)描述中,正確的是()。 A. C調(diào)用函數(shù)時,只能把實參的值傳給形參,形參的值不能傳遞給實參 B. C++函數(shù)既可以嵌套定義又可以遞歸調(diào)用 C. 函數(shù)必須有返回值,否則不能使用函數(shù) D. C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一源程序文件中答案:A28、在C++語言中函數(shù)返回值的類型是由()決定的。 A. 調(diào)用該函數(shù)時系統(tǒng)臨時 B. return語句中的表達式類型 C. 定義該函數(shù)時所指定的函數(shù)類型 D. 調(diào)用該函數(shù)時的主調(diào)函數(shù)類型答案:C29、以下程序的輸出結(jié)果是()。intfunc(inta,intb){returna+b;}intmain(){intx=6,y=7,z=8,r;r=func(func(x,y),z--);cout<<r<<endl;}C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第8頁。 A. 15C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第8頁。 B. 20 C. 21 D. 31答案:C30、以下程序的輸出結(jié)果是()。voidfun(inta,intb,intc){a=456;b=567;c=678;}intmain(){intx=10,y=20,z=30;fun(x,y,z);cout<<z<<”,”<<y<<”,”<<x<<endl;} A. 30,20,10 B. 10,20,30 C. 456,567,678 D. 678,567,456答案:A【章節(jié)】第7章類與對象【知識點】1、面向?qū)ο蟪绦蛟O(shè)計的基本概念2、類定義、屬性與行為、訪問權(quán)限控制,對象的定義、使用3、構(gòu)造函數(shù)與析構(gòu)函數(shù)4、函數(shù)重載技術(shù)與運算符重載技術(shù)5、友元【單選題】1、對于下面定義的類MyClass,在函數(shù)f()中將對象成員n的值修改為50的語句(劃線處)應(yīng)該是()。classMyClass{public:MyClass(intx){n=x;}voidSetValue(intn1){n=n1;}private:intn;};intf()C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第9頁。{C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第9頁。MyClass*ptr=newMyClass(45);__________;} A. MyClass(50) B. SetValue(50) C. ptr->SetValue(50) D. ptr->n=50答案:C分值:2難度:1知識點:評析:2、類MyClass的定義如下:classMyClass{public:MyClass(){value=0;}setVariable(inti){value=i;}private:intvalue;};則以下各項對如下語句序列的描述中,正確的是()。MyClass*p,my;p=&my; A. 語句”p=&my;”是把對象my賦值給指針變量p B. 語句”MyClass*p,my;”會調(diào)用兩次類MyClass的構(gòu)造函數(shù) C. 對語句”*p.SetVariable(5)”的調(diào)用是正確的 D. 語句”p->SetVariable(5)”與語句”my.SetVariable(5)”等價答案:D分值:2難度:1知識點:評析:3、 下面類的定義,有()錯誤。classMyClass{inti=0;public:voidMyClass();~MyClass(intValue);}; A. 1C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第10頁。 B. 2C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第10頁。 C. 3 D. 4答案:C分值:2難度:1知識點:評析:4、 定義析構(gòu)函數(shù)時,應(yīng)該注意()。 A. 其名與類名完全相同 B. 返回類型是void類型 C. 無形參,也不可重載 D. 函數(shù)體中必須有delete語句。答案:C分值:2難度:1知識點:評析:5、 構(gòu)造函數(shù)不具備的特征的是()。 A. 構(gòu)造函數(shù)的函數(shù)名與類名相同 B. 構(gòu)造函數(shù)可以重載 C. 構(gòu)造函數(shù)可以設(shè)置默認參數(shù) D. 構(gòu)造函數(shù)必須指定返回類型答案:D分值:2難度:1知識點:評析:6、 類的析構(gòu)函數(shù)是在()被自動調(diào)用的。 A. 類創(chuàng)建時 B. 創(chuàng)建對象時 C. 刪除對象時 D. 不自動調(diào)用答案:C分值:2難度:1知識點:評析:7、 對于任何一個類,析構(gòu)函數(shù)最多有()個。 A. 0 B. 1 C. 2 D. 4答案:BC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第11頁。分值:2C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第11頁。難度:2知識點:評析:8、通常,拷貝構(gòu)造函數(shù)的參數(shù)是()。 A. 某個對象名 B. 某個對象的引用名 C. 某個對象的成員名 D. 某個對象的指針名答案:B分值:2難度:1知識點:評析:9、 面向?qū)ο蟪绦蛟O(shè)計中的數(shù)據(jù)隱藏指的是()。 A. 輸入數(shù)據(jù)必須輸入保密口令 B. 數(shù)據(jù)經(jīng)過加密處理 C. 對象內(nèi)部數(shù)據(jù)結(jié)構(gòu)上建有防火墻 D. 對象內(nèi)部數(shù)據(jù)結(jié)構(gòu)的不可訪問性答案:D分值:2難度:1知識點:評析:10、下列關(guān)于類的訪問權(quán)限的描述中,錯誤的是().。 A.說明為公有的成員可以被程序中的任何代碼訪問 B.說明為私有的成員只能被類的成員和說明為友元類的成員函數(shù)訪問 C.說明為保護的成員,除了能被本身的成員函數(shù)和說明為友元類的成員函數(shù)訪問外,該類的派生類的成員也可以訪問 D.類的所有成員都可以被程序中的任何代碼訪問答案:D分值:2難度:1知識點:評析:11、一個類的友元函數(shù)或友元類可以訪問該類的()。 A. 私有成員 B. 保護成員 C. 公有成員 D. 所有成員答案:D分值:2難度:1知識點:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第12頁。評析:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第12頁。12、下列關(guān)于成員函數(shù)特征的描述中,錯誤的是()。 A. 成員函數(shù)一定是內(nèi)聯(lián)函數(shù) B. 成員函數(shù)可以重載 C. 成員函數(shù)可以設(shè)置參數(shù)的默認值 D. 成員函數(shù)可以是靜態(tài)的答案:A分值:2難度:1知識點:評析:13、下面對類中靜態(tài)數(shù)據(jù)成員的描述中,正確的是()。 A. 靜態(tài)數(shù)據(jù)成員是類的所有對象共享的數(shù)據(jù) B. 類的每個對象都有自己的靜態(tài)數(shù)據(jù)成員 C. 類的不同對象有不同的靜態(tài)數(shù)據(jù)成員 D. 靜態(tài)數(shù)據(jù)成員不能通過類的對象調(diào)用答案:A分值:2難度:1知識點:評析:14、C++中對于類中定義的成員,其默認的訪問權(quán)限為()。 A. public B. protected C. private D. static答案:C分值:2難度:1知識點:評析:15、類的析構(gòu)函數(shù)的作用是()。 A. 作為類的一般成員函數(shù) B. 類的初始化 C. 對象的初始化 D. 對象掃尾處理答案:D分值:2難度:1知識點:評析:16、若有一個MyClass類,則執(zhí)行語句”MyClass,a,b(2),*p;”后,自動調(diào)用該類的構(gòu)造函數(shù)()次。 A. 2C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第13頁。 B. 3C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第13頁。 C. 4 D. 5答案:A分值:2難度:1知識點:評析:17、C++對C語言作了很多改進,即從面向過程變成為面向?qū)ο蟮闹饕倪M是() A. 增加了一些新的運算符 B. 允許函數(shù)重載,并允許設(shè)置缺省參數(shù) C. 規(guī)定函數(shù)說明符必須用原型 D. 引進了類和對象的概念答案:D分值:2難度:1知識點:評析:18、類MyClass的定義如下:classMyClass{public:Myclass(){}MyClass(inti){value=newint(i);}int*value;};若要對value賦值,則下面語句正確的是()。 A. MyClassmy;my.value=10; B. MyClassmy;*my.value=10; C. MyClassmy;my.*value=10; D. MyClassmy(10);答案:D分值:2難度:1知識點:評析:19、下面是對類MyClass的定義,對定義中語句描述正確的是()。classMyClass{public:voidMyClass(inta){X=a;}//①intf(inta,intb)//②{X=a;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第14頁。Y=b;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第14頁。}intf(inta,intb,intc=0)//③{X=a;Y=b;Z=c;}staticvoidg(){X=10;}//④private:intX,Y,Z;}; A. 語句①是類MyClass的構(gòu)造函數(shù)定義 B. 語句②是類和語句③實現(xiàn)類成員函數(shù)的重載 C. 語句④實現(xiàn)對類成員變量X的更新操作 D. 語句①、②、③和④都不正確答案:D分值:2難度:1知識點:評析:20、類aClass的定義如下:classaClass{public:aClass(){}aClass(inti){value=newint(i);}int*value;}若要對類中的value賦值,則下面的語句中,正確的是()。 A. aClassmy;my.value=10; B. aClassmy;*my.value=10; C. aClassmy;my.*value=10; D. aClassmy(10);答案:D分值:2難度:1知識點:評析:21、對于下面定義的類MyClass,在函數(shù)f()中將對象成員n的值修改為50的語句(劃線處)應(yīng)該是()。classMyClass{public:MyClass(intx){n=x;}voidSetValue(intn1){n=n1;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第15頁。}C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第15頁。private:intn;};intf(){MyClass*ptr=newMyClass(45);__________;} A. MyClass(50) B. SetValue(50) C. ptr->SetValue(50) D. ptr->n=50答案:C分值:2難度:1知識點:評析:22、類MyClass的定義如下:classMyClass{public:MyClass(){value=0;}setVariable(inti){value=i;}private:intvalue;};則以下各項對如下語句序列的描述中,正確的是().。MyClass*p,my;p=&my; A. 語句”p=&my;”是把對象my賦值給指針變量p B. 語句”MyClass*p,my;”會調(diào)用兩次類MyClass的構(gòu)造函數(shù) C. 對語句”*p.SetVariable(5)”的調(diào)用是正確的 D. 語句”p->SetVariable(5)”與語句”my.SetVariable(5)”等價答案:D分值:2難度:1知識點:評析:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第16頁。23、類的析構(gòu)函數(shù)是在()被自動調(diào)用的?C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第16頁。 A. 類創(chuàng)建時 B. 創(chuàng)建對象時 C. 刪除對象時 D. 不自動調(diào)用答案:C分值:2難度:1知識點:評析:24、對于任何一個類,析構(gòu)函數(shù)最多有()個。 A. 0 B. 1 C. 2 D. 3答案:B分值:2難度:1知識點:評析:25、通常,拷貝構(gòu)造函數(shù)的參數(shù)是()。 A. 某個對象名 B. 某個對象的成員名 C. 某個對象的引用名 D. 某個對象的指針名答案:C分值:2難度:3知識點:評析:26、下列關(guān)于類的訪問權(quán)限的描述中,錯誤的是().。 A. 說明為公有的成員可以被程序中的任何代碼訪問 B. 說明為私有的成員只能被類的成員和說明為友元類的成員函數(shù)訪問 C. 說明為保護的成員,除了能被本身的成員函數(shù)和說明為友元類的成員函數(shù)訪問外,該類的派生類的成員也可以訪問 D. 類的所有成員都可以被程序中的任何代碼訪問答案:D分值:2難度:1知識點:評析:27、一個類的友元函數(shù)或友元類可以訪問該類的()。 A. 私有成員 B. 保護成員C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第17頁。 C. 公有成員C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第17頁。 D. 所有成員答案:D分值:2難度:1知識點:評析:28、下列關(guān)于成員函數(shù)特征的描述中,錯誤的是()。 A. 成員函數(shù)一定是內(nèi)聯(lián)函數(shù) B. 成員函數(shù)可以重載 C. 成員函數(shù)可以設(shè)置參數(shù)的默認值 D. 成員函數(shù)可以是靜態(tài)的答案:A分值:2難度:1知識點:評析:29、下面對類中靜態(tài)數(shù)據(jù)成員的描述中,正確的是()。 A. 靜態(tài)數(shù)據(jù)成員是類的所有對象共享的數(shù)據(jù) B. 類的每個對象都有自己的靜態(tài)數(shù)據(jù)成員 C. 類的不同對象有不同的靜態(tài)數(shù)據(jù)成員 D. 靜態(tài)數(shù)據(jù)成員不能通過類的對象調(diào)用答案:A分值:2難度:1知識點:評析:30、C++中對于類中定義的成員,其默認的訪問權(quán)限為()。 A. public B. protected C. private D. static答案:C分值:2難度:1知識點:評析:31、類的析構(gòu)函數(shù)的作用是()。 A. 作為類的一般成員函數(shù) B. 類的初始化 C. 對象的初始化 D. 對象掃尾處理答案:D分值:2C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第18頁。難度:2C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第18頁。知識點:評析:32、若有一個MyClass類,則執(zhí)行語句”MyClass,a,b(2),*p;”后,自動調(diào)用該類的構(gòu)造函數(shù)()次。 A. 2 B. 3 C. 4 D. 5答案: A分值:2難度:1知識點:評析:33、類MyClass的定義如下:classMyClass{public:Myclass(){}MyClass(inti){value=newint(i);}int*value;};若要對value賦值,則下面語句正確的是()。 A. MyClassmy;my.value=10; B. MyClassmy;*my.value=10; C. MyClassmy;my.*value=10; D. MyClassmy(10);答案:D分值:2難度:1知識點:評析:34、下面是對類MyClass的定義,對定義中語句描述正確的是()。classMyClass{public:voidMyClass(inta){X=a;}//①intf(inta,intb)//②{X=a;Y=b;}intf(inta,intb,intc=0)//③{C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第19頁。X=a;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第19頁。Y=b;Z=c;}staticvoidg(){X=10;}//④private:intX,Y,Z;}; A. 語句①是類MyClass的構(gòu)造函數(shù)定義 B. 語句②是類和語句③實現(xiàn)類成員函數(shù)的重載 C. 語句④實現(xiàn)對類成員變量X的更新操作 D. 語句①、②、③和④都不正確答案:D分值:2難度:1知識點:評析:35、類aClass的定義如下:classaClass{public:aClass(){}aClass(inti){value=newint(i);}int*value;}若要對類中的value賦值,則下面的語句中,正確的是()。 A. aClassmy;my.value=10; B. aClassmy;*my.value=10; C. aClassmy;my.*value=10; D. aClassmy(10);答案:D分值:2難度:1知識點:評析:36、每個類()構(gòu)造函數(shù)。 A. 只能有一個 B. 只可有公有的 C. 可以有多個 D. 只可有缺省的答案:C分值:2難度:1知識點:評析:37、已知類A中的一個成員函數(shù)的說明如下:voidSet(A&a);則該函數(shù)的參數(shù)“A&a”的含義是()。 A. 指向A的指針為a B. 將變量a的地址賦給類A C. 類A對象引用a用作函數(shù)的形參 D. 變量A與a按位與后作函數(shù)參數(shù)C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第20頁。答案:CC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第20頁。分值:2難度:3知識點:評析:38、下列特性中,C與C++共有的是()。 A. 繼承 B. 封裝 C. 多態(tài)性 D. 函數(shù)定義不能嵌套答案:D分值:2難度:2知識點:評析:39、假定AB為一個類,則執(zhí)行ABx;語句時將自動調(diào)用該類的()。 A. 有參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值構(gòu)造函數(shù)答案:B分值:2難度:1知識點:評析:40、如果類A被說明成類B的友元,則()。 A. 類A的成員即類B的成員 B. 類B的成員即類A的成員 C. 類A的成員函數(shù)不得訪問類B的成員 D. 類B不一定是類A的友元答案:D分值:2難度:1知識點:評析:41、下列不是類的成員函數(shù)的是()。 A. 構(gòu)造函數(shù) B. 析構(gòu)函數(shù) C. 友元函數(shù) D. 拷貝構(gòu)造函數(shù)答案:C分值:2難度:1知識點:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第21頁。評析:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第21頁。42、拷貝(復(fù)制)構(gòu)造函數(shù)的作用是()。 A. 進行數(shù)據(jù)類型的轉(zhuǎn)換 B. 用對象調(diào)用成員函數(shù) C. 用對象初始化對象 D. 用一般類型的數(shù)據(jù)初始化對象答案:C分值:2難度:3知識點:評析:43、若要把函數(shù)voidf()定義為類aClass的友元函數(shù),則應(yīng)該在類aClass的定義中加入的語句是()。 A. voidf(); B. staticvoidf(); C. friendf(); D. friendvoidf();答案:D分值:2難度:1知識點:評析:44、下列關(guān)于析構(gòu)函數(shù)的描述中,錯誤的是()。 A. 類中有且僅有一個析構(gòu)函數(shù) B. 析構(gòu)函數(shù)可以有形參 C. 析構(gòu)函數(shù)沒有函數(shù)類型 D. 析構(gòu)函數(shù)在對象消失時被自動執(zhí)行答案:B分值:2難度:2知識點:評析:45、下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是()。 A. 靜態(tài)數(shù)據(jù)成員可以在類體內(nèi)進行初始化 B. 靜態(tài)數(shù)據(jù)成員不可以被類的對象調(diào)用 C. 靜態(tài)數(shù)據(jù)成員不能受private控制符的作用 D. 靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用答案:D分值:2難度:1知識點:評析:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第22頁?!鹃喿x程序題】C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第22頁。1、寫出下列程序的運行結(jié)果 #include<iostream>usingnamespacestd;classMyClass{public:voidDisplayMessage(constchar*Text,intType){cout<<"Message:Text="<<Text;cout<<"Text="<<Type+10<<endl;}voidDisplayMessage(constchar*Text,unsignedintType){cout<<"Message:Text="<<Text;cout<<"Text="<<Type<<endl;}};voidmain(){unsignedcharvalue=0;MyClassmy;my.DisplayMessage("Hello",value);} 答案:Message:Text=HelloText=10分值:5難度:3知識點:評析:2、寫出下列程序的運行結(jié)果#include<iostream>usingnamespacestd;classMyClass{inta,b;public:MyClass(intx=0,inty=0);~MyClass();};MyClass::MyClass(intx,inty):a(x),b(y){cout<<"Thisisaconstructor!a+b="<<a+b<<endl;}MyClass::~MyClass()C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第23頁。{C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第23頁。cout<<"Thisisadestructor!"<<endl;}voidmain(){MyClassx,y(10,20),z(y);} 答案:Thisisaconstructor!a+b=0Thisisaconstructor!a+b=30Thisisadestructor!Thisisadestructor!Thisisadestructor!分值:5難度:3知識點:評析:3、寫出下列程序的運行結(jié)果#include<iostream>usingnamespacestd;classMyClass{public:MyClass(inta){X=a;cout<<"Thisis"<<X<<"'sconstuctor."<<endl;}~MyClass(){cout<<"Thisis"<<X<<"'sdestructor."<<endl;}private:intX;};voidmain(){MyClasscommonObj(1);staticMyClassstaticObj(2);} 答案:Thisis1'sconstuctor.Thisis2'sconstuctor.C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第24頁。Thisis1'sdestructor.C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第24頁。Thisis2'sdestructor.分值:5難度:3知識點:評析:4、寫出下列程序的運行結(jié)果#include<iostream>usingnamespacestd;classMyClass{public:MyClass();voidPrint();~MyClass();private:inti;staticintj;};intMyClass::j=0;MyClass::MyClass(){cout<<"Thisisaconstructor!"<<endl;j+=10;}voidMyClass::Print(){cout<<"Thevalueofjis"<<j<<endl;}MyClass::~MyClass(){cout<<"Thisisadestructor!"<<endl;}voidmain(){MyClassfirst,second;first.Print();second.Print();} 答案:Thisisaconstructor!Thisisaconstructor!Thevalueofjis20Thevalueofjis20C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第25頁。Thisisadestructor!C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第25頁。Thisisadestructor!分值:5難度:2知識點:評析:5、寫出下列程序的運行結(jié)果#include<iostream>usingnamespacestd;classMyClass{charch;public:MyClass();MyClass(charcharacter);voidPrint();~MyClass();};MyClass::MyClass(){cout<<"Thisisaconstructor!"<<endl;ch='a';}MyClass::MyClass(charcharacter){cout<<"Thisisaconstructor!"<<endl;ch=character;}voidMyClass::Print(){cout<<"Thevalueofchis"<<ch<<endl;}MyClass::~MyClass(){cout<<"Thisisadestructor!"<<endl;}voidmain(){MyClassfirst,second('b');first.Print();second.Print();} 答案:Thisisaconstructor!C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第26頁。Thisisaconstructor!C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第26頁。ThevalueofchisaThevalueofchisbThisisadestructor!Thisisadestructor!分值:5難度:3知識點:評析:6、寫出下列程序的運行結(jié)果#include<iostream>usingnamespacestd;classA{inta,b;public:A(){a=b=0;}A(intaa,intbb){a=aa;b=bb;cout<<a<<''<<bb<<endl;}};voidmain(){Ax,y(2,3);} 答案:23分值:5難度:3知識點:評析:7、寫出下列程序的運行結(jié)果#include<iostream>usingnamespacestd;classSample{intn;public:Sample(inti){n=i;}voidprint(){cout<<"1:n="<<n<<",";}C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第27頁。voidprint()constC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第27頁。{cout<<"2:n="<<n<<endl;}};voidmain(){Samplea(10);constSampleb(20);a.print();b.print();} 答案:1:n=10,2:n=20分值:5難度:3知識點:評析:【編程題】選做1、描述一個復(fù)數(shù)類Complex,私有數(shù)據(jù)為實部Real和虛部Image要求Complex類包含如下成員函數(shù):(1)有構(gòu)造函數(shù),缺省時實部Real和虛部Imag置為0;(2)voidSetReal(doublea)能修改Real的值;(3)voidSetImag(doubleb)能修改Imag的值;(4)doubleGetReal()能取Real的值;(5)doubleGetImag()能取Imag的值;(6)重載運算符+,完成兩個復(fù)數(shù)的加法。答案:pca701.txt#include<iostream>usingnamespacestd;classComplex{doubleReal,Imag;public: Complex(doublea=0,doubleb=0){ Real=a;Imag=b;} voidSetReal(doublea){Real=a;} voidSetImag(doubleb){Imag=b;} DoubleGetReal(){returnReal;} doubleGetImag(){returnImag;}Complexoperator+(Complex&a) { Complext; t.Real=Real+a.Real; t.Imag=Imag+a.Imag;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第28頁。 returnt;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第28頁。}};【章節(jié)】第8章繼承與派生【知識點】1、繼承的相關(guān)概念2、派生類的構(gòu)造與析構(gòu)3、繼承的應(yīng)用【單選題】1、 若類A和類B的定義如下:classA{inti,j;public:intgeti(){returni;}};classB:publicA{intk;public:voidmake(){k=i*j;}};則上述中,()是非法的表達式。 A. k=i*j B. intk; C. returni; D. voidmake();答案:A分值:2難度:1知識點:評析:2、關(guān)于公有繼承,下列說法錯誤的是()。 A. 基類的公有成員和保護成員被繼承后作為派生類的公有成員和保護成員。 B. 派生類的其他成員可以直接訪問基類的公有成員和保護成員。 C. 派生類的對象可以訪問基類的私有成員。 D. 派生類成員和對象都無法訪問基類的私有成員。答案:C分值:2難度:1知識點:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第29頁。評析:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第29頁。3、下列說法中錯誤的是()。 A. 公有繼承時基類中的public成員在派生類中仍是public的; B. 公有繼承時基類中的private成員在派生類中仍是private的; C. 私有繼承時基類中的public成員在派生類中是private的; D. 保護繼承時基類中的public成員在派生類中是protected的;答案:B分值:2難度:1知識點:評析:4、 在公有繼承中,基類中的公有成員作為派生類的()。 A. 公有成員 B. 私有成員 C. 保護成員 D. 私有成員函數(shù)答案:A分值:2難度:1知識點:評析:5、基類中的()不允許外界訪問,但允許派生類的成員訪問,這樣既有一定的隱藏能力,又提供了開放的接口。 A. 公有成員 B. 私有成員 C. 保護成員 D. 私有成員函數(shù)答案:C分值:2難度:1知識點:評析:6、在下面的表達式中,不表示虛繼承的是()。 A. virtualpublic B. publicvirtual C. public D. virtual答案:C分值:2難度:1知識點:評析:7、設(shè)置虛函數(shù)的聲明中,正確的是()。 A. 簡化程序C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第30頁。 B. 消除二義性C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第30頁。 C. 提高運行效率 D. 減少目標代碼答案:B分值:2難度:1知識點:評析:8、下面敘述錯誤的是()。 A. 基類的protected成員在派生類中仍然是protected B. 基類的protected成員在public派生類中仍然是protected的 C. 基類的protected成員在private派生類中是private的 D. 基類的protected成員不能被派生類的對象訪問答案:A分值:2難度:1知識點:評析:9、派生類的對象對它的基類成員中()是可以訪問的。 A. 公有繼承的公有成員 B. 公有繼承的私有成員 C. 公有繼承的保護成員 D. 私有繼承的公有成員答案:A分值:2難度:1知識點:評析:10、下列對派生類的描述中,錯誤的是()。 A. 一個派生類可以作為另一個派生類的基類 B. 派生類至少有一個基類 C. 派生類的缺省繼承方式是private D. 派生類只含有基類的公有成員和保護成員答案:D分值:2難度:1知識點:評析:11.、繼承具有(),即當基類本身也是某一個類派生類時,底層的派生類也會自動繼承間接基類的成員。 A. 規(guī)律性 B. 傳遞性 C. 重復(fù)性 D. 多樣性C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第31頁。答案:BC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第31頁。分值:2難度:1知識點:評析:12、設(shè)有基類定義:classCbase{private:inta;protected:intb;public:intc;};派生類采用何種繼承方式可以使成員變量b成為自己的私有成員()。 A. 私有繼承 B. 保護繼承 C. 公有繼承 D. 私有、保護、公有均可答案:A分值:2難度:1知識點:評析:13、多繼承派生類構(gòu)造函數(shù)構(gòu)造對象時,()被最先調(diào)用。 A. 派生類自己的構(gòu)造函數(shù) B. 虛基類的構(gòu)造函數(shù) C. 非虛基類的構(gòu)造函數(shù) D. 派生類中子對象類的構(gòu)造函數(shù)答案:B分值:2難度:1知識點:評析:14、派生類的對象對它的哪一類基類成員是可以訪問的?()。 A. 保護繼承的基類的公有成員 B. 公有繼承的基類的保護成員 C. 公有繼承的基類的私有成員 D. 公有繼承的基類的公有成員答案:D分值:2難度:1知識點:評析:15、關(guān)于保護繼承,下列說法錯誤的是()。 A. 保護繼承的特點是基類的所有公用成員和保護成員都成為派生類的保護成員。 B. 派生類對象不能訪問基類中的任何成員。C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第32頁。 C. 派生類的對象可以訪問基類的公有成員。C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第32頁。 D. 保護繼承的派生類和私有繼承的派生類,對基類成員訪問屬性是相同的。答案:C分值:2難度:1知識點:評析:16、關(guān)于私有繼承,下列說法錯誤的是()。 A. 基類的公有成員和保護成員被繼承后作為派生類的私有成員,派生類的其他成員可以直接訪問他們。 B. 基類的公有成員和保護成員被繼承后作為派生類的私有成員,派生類的其他成員不能直接訪問他們。 C. 基類的私有成員,派生類的成員和派生類的對象都無法訪問。 D. 派生類的對象無法訪問基類的所有成員。答案:B分值:2難度:1知識點:評析:17、在公有繼承中,基類中的保護成員作為派生類的()。 A. 公有成員 B. 私有成員 C. 保護成員 D. 私有成員函數(shù)答案:C分值:2難度:1知識點:評析:18、基類()在派生類中的性質(zhì)和繼承的性質(zhì)一樣。 A. 公有成員 B. 私有成員 C. 保護成員 D. 私有成員函數(shù)答案:A分值:2難度:1知識點:評析:19.派生類的對象對它的基類成員中的()是可以訪問的。 A. 公有繼承的公有成員 B. 公有繼承的私有成員 C. 公有繼承的保護成員 D. 私有繼承的私有成員C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第33頁。答案:AC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第33頁。分值:2難度:1知識點:評析:20、下列虛基類的聲明中,正確的是()。 A. classvirtualB:publicA B. virtualclassB:publicA C. classB:publicAvirtual D. classB:virtualpublicA答案:D分值:2難度:1知識點:評析:21、下列說法中錯誤的是()。 A. 公有繼承時基類中的public成員在派生類中仍是public的; B. 公有繼承時基類中的private成員在派生類中仍是private的; C. 私有繼承時基類中的public成員在派生類中是private的; D. 保護繼承時基類中的public成員在派生類中是protected的;答案:B分值:2難度:1知識點:評析:22、在公有繼承中,基類中的公有成員作為派生類的()。 A. 公有成員 B. 私有成員 C. 保護成員 D. 私有成員函數(shù)答案:A分值:2難度:1知識點:評析:23、基類中的()不允許外界訪問,但允許派生類的成員訪問,這樣既有一定的隱藏能力,又提供了開放的接口。 A. 公有成員 B. 私有成員 C. 保護成員 D. 私有成員函數(shù)答案:C分值:2難度:1C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第34頁。知識點:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第34頁。評析:24、在下面的表達式中,不表示虛繼承的是()。 A. virtualpublic B. publicvirtual C. public D. virtual答案:C分值:2難度:1知識點:評析:25、設(shè)置虛函數(shù)的聲明中,正確的是()。 A. 簡化程序 B. 消除二義性 C. 提高運行效率 D. 減少目標代碼答案:B分值:2難度:1知識點:評析:26、下面敘述錯誤的是()。 A. 基類的protected成員在派生類中仍然是protected B. 基類的protected成員在public派生類中仍然是protected的 C. 基類的protected成員在private派生類中是private的 D. 基類的protected成員不能被派生類的對象訪問答案:A分值:2難度:1知識點:評析:27、派生類的對象對它的基類成員中()是可以訪問的。 A. 公有繼承的公有成員 B. 公有繼承的私有成員 C. 公有繼承的保護成員 D. 私有繼承的公有成員答案:A分值:2難度:1知識點:評析:28、下列對派生類的描述中,錯誤的是()。 A. 一個派生類可以作為另一個派生類的基類C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第35頁。 B. 派生類至少有一個基類C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第35頁。 C. 派生類的缺省繼承方式是private D. 派生類只含有基類的公有成員和保護成員答案:D分值:2難度:1知識點:評析:29、繼承具有(),即當基類本身也是某一個類派生類時,底層的派生類也會自動繼承間接基類的成員。 A. 規(guī)律性 B. 傳遞性 C. 重復(fù)性 D. 多樣性答案:B分值:2難度:1知識點:評析:30、設(shè)有基類定義:classCbase{private:inta;protected:intb;public:intc;};派生類采用何種繼承方式可以使成員變量b成為自己的私有成員()。 A. 私有繼承 B. 保護繼承 C. 公有繼承 D. 私有、保護、公有均可答案:A分值:2難度:1知識點:評析:【閱讀程序題】1、看程序?qū)懡Y(jié)果#include<iostream.h>classA{public:A(char*s){cout<<s<<endl;}~A(){}};C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第36頁。classB:virtualpublicAC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第36頁。{public:B(char*s1,char*s2):A(s1){cout<<s2<<endl;}};classC:virtualpublicA{public:C(char*s1,char*s2):A(s1){cout<<s2<<endl;}};classD:publicB,publicC{public:D(char*s1,char*s2,char*s3,char*s4):B(s1,s2),C(s1,s3),A(s1){cout<<s4<<endl;}};voidmain(){D*p=newD("classA","classB","classC","classD");deletep;} 答案:創(chuàng)建D對象時,只有在D的構(gòu)造函數(shù)的初始化列表中列出的虛基類構(gòu)造函數(shù)被調(diào)用,D的兩個基類B、C的構(gòu)造函數(shù)中的虛基類構(gòu)造函數(shù)被忽略,不執(zhí)行,從而保證在D對象中只有一個虛基類子對象。運行結(jié)果:classAclassBclassCclassD分值:5難度:3知識點:評析:2、看程序?qū)懡Y(jié)果#include<iostream.h>classBase{inti;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第37頁。public:C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第37頁。Base(intn){cout<<"Constuctingbaseclass"<<endl;i=n;}~Base(){cout<<"Destructingbaseclass"<<endl;}voidshowi(){cout<<i<<",";}intGeti(){returni;}};classDerived:publicBase{intj;Baseaa;public:Derived(intn,intm,intp):Base(m),aa(p){cout<<"Constructingderivedclass"<<endl;j=n;}~Derived(){cout<<"Destructingderivedclass"<<endl;}voidshow(){Base::showi();cout<<j<<","<<aa.Geti()<<endl;}};voidmain(){Derivedobj(8,13,24);obj.show();} 答案:派生類的構(gòu)造函數(shù)的執(zhí)行次序,先調(diào)用基類的構(gòu)造函數(shù),再調(diào)用派生類中子對象類的構(gòu)造函數(shù),最后調(diào)用派生類的構(gòu)造函數(shù)。析構(gòu)函數(shù)的執(zhí)行次序與構(gòu)造函數(shù)正好相反,先調(diào)用派生類的析構(gòu)函數(shù),再調(diào)用派生類中子對象類的析構(gòu)函數(shù),最后調(diào)用基類的析構(gòu)函數(shù)。運行結(jié)果:ConstuctingbaseclassConstuctingbaseclassConstructingderivedclass13,8,24DestructingderivedclassDestructingbaseclassDestructingbaseclass分值:5難度:4知識點:評析:3、看程序?qū)懡Y(jié)果#include<iostream.h>classA{public:A(char*s){cout<<s<<endl;}C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第38頁。~A(){}C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第38頁。};classB:virtualpublicA{public:B(char*s1,char*s2):A(s1){cout<<s2<<endl;}};classC:virtualpublicA{public:C(char*s1,char*s2):A(s1){cout<<s2<<endl;}};classD:publicB,publicC{public:D(char*s1,char*s2,char*s3,char*s4):B(s1,s2),C(s1,s3),A(s1){cout<<s4<<endl;}};voidmain(){D*p=newD("classA","classB","classC","classD");deletep;} 答案:創(chuàng)建D對象時,只有在D的構(gòu)造函數(shù)的初始化列表中列出的虛基類構(gòu)造函數(shù)被調(diào)用,D的兩個基類B、C的構(gòu)造函數(shù)中的虛基類構(gòu)造函數(shù)被忽略,不執(zhí)行,從而保證在D對象中只有一個虛基類子對象。運行結(jié)果:classAclassBclassCclassD分值:5難度:4知識點:評析:4、看程序?qū)懡Y(jié)果#include<iostream.h>classBaseC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第39頁。{inti;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第39頁。public:Base(intn){cout<<"Constuctingbaseclass"<<endl;i=n;}~Base(){cout<<"Destructingbaseclass"<<endl;}voidshowi(){cout<<i<<",";}intGeti(){returni;}};classDerived:publicBase{intj;Baseaa;public:Derived(intn,intm,intp):Base(m),aa(p){cout<<"Constructingderivedclass"<<endl;j=n;}~Derived(){cout<<"Destructingderivedclass"<<endl;}voidshow(){Base::showi();cout<<j<<","<<aa.Geti()<<endl;}};voidmain(){Derivedobj(8,13,24);obj.show();}答案:派生類的構(gòu)造函數(shù)的執(zhí)行次序,先調(diào)用基類的構(gòu)造函數(shù),再調(diào)用派生類中子對象類的構(gòu)造函數(shù),最后調(diào)用派生類的構(gòu)造函數(shù)。析構(gòu)函數(shù)的執(zhí)行次序與構(gòu)造函數(shù)正好相反,先調(diào)用派生類的析構(gòu)函數(shù),再調(diào)用派生類中子對象類的析構(gòu)函數(shù),最后調(diào)用基類的析構(gòu)函數(shù)。運行結(jié)果:ConstuctingbaseclassConstuctingbaseclassConstructingderivedclass13,8,24DestructingderivedclassDestructingbaseclassDestructingbaseclass分值:5難度:3知識點:評析:5、寫出下列程序運行結(jié)果:#include<iostream>usingnamespacestd;classAC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第40頁。{intx;C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第40頁。public:intz;voidsetx(inti){x=i;}intgetx(){returnx;}};classB:publicA{intm;public:voidsetvalue(inta,intb,intc){setx(c);z=b;m=a;}voiddisplay(){cout<<getx()<<","<<z<<","<<m<<endl;}};intmain(){Bobj;obj.setvalue(2,3,4);obj.display();return0;} 答案:4,3,2分值:5難度:3知識點:評析:6、寫出程序運行結(jié)果:#include<iostream>usingnamespacestd;classbase{public:voidwho(){cout<<"baseclass"<<endl;}};classderive1:publicbase{public:voidwho(){cout<<"derive1class"<<endl;}};classderive2:publicbaseC程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第41頁。{C程序設(shè)計題庫及答案(精簡)全文共84頁,當前為第41頁。public:voidwho(){cout<<"derive2class"<<endl;}};voidmain(){baseobj1;obj1.who();derive1obj2;obj2.base::who();derive2obj3;obj3.base::who();} 答案:baseclassbaseclassbaseclass分值:5難度:3知識點:評析:7、閱讀下列程序,寫出程序運行結(jié)果。#include<iostream>usingnamespacestd;classBase{intx;public:Base(inti){x=i;cout<
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 防疫技能培訓(xùn)
- 2025貨運考試題庫及答案
- 安全員A證考試通關(guān)測試卷含答案詳解【預(yù)熱題】
- 中西醫(yī)結(jié)合執(zhí)業(yè)醫(yī)師考試真題及答案6卷
- 安全員A證考試考前沖刺模擬題庫附參考答案詳解【培優(yōu)】
- 2025旅行者考試試卷及答案
- 基于BIM的跨專業(yè)協(xié)同設(shè)計方案
- 安全員A證考試能力測試B卷及參考答案詳解(基礎(chǔ)題)
- 2026年中考語文一輪專題復(fù)習梳理:《語言綜合運用之修辭手法》課件
- 安全員A證考試每日一練【模擬題】附答案詳解
- 重難點練02 古詩文對比閱讀(新題型新考法)-2024年中考語文專練(上海專用)(解析版)
- 門崗應(yīng)急預(yù)案管理辦法
- 幼兒階段口才能力培養(yǎng)課程設(shè)計
- 職高一年級《數(shù)學》(基礎(chǔ)模塊)上冊試題題庫
- JG/T 367-2012建筑工程用切(擴)底機械錨栓及后切(擴)底鉆頭
- 國家職業(yè)標準 6-11-01-03 化工總控工S (2025年版)
- 公共安全視頻監(jiān)控建設(shè)聯(lián)網(wǎng)應(yīng)用(雪亮工程)運維服務(wù)方案純方案
- 定額〔2025〕2號文-關(guān)于發(fā)布2020版電網(wǎng)技術(shù)改造及檢修工程概預(yù)算定額2024年下半年價格
- 安全生產(chǎn)標準化與安全文化建設(shè)的關(guān)系
- DB31-T 1502-2024 工貿(mào)行業(yè)有限空間作業(yè)安全管理規(guī)范
- 2022版義務(wù)教育(物理)課程標準(附課標解讀)
評論
0/150
提交評論