




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
清華大學期終試題2017年C++程序設計期終考試試題一、填空題(20分)1.采用內聯函數的目的在于提高。2.采用函數重載的目的在于提高。3.用一個已知對象來初始化一個新對象時,系統會調用構造函數來完成。4.靜態數據成員與一般數據成員不同,它的初始化應在進行。5.在C++中,不能為類定義對象。6.單個參數的構造函數可以提供轉換功能。7.在定義派生類時,默認的繼承方式是。8.在繼承方式下,派生類對象的地址值可以賦值給基類的對象指針。9.虛基類的構造函數和非虛基類的構造函數在成員初始化列表中同時出現時,的構造函數優先執行。10.構造函數中調用虛函數時,采用聯編。二、選擇題(請在正確答案上打上○)(20分)1.下列各表達式中,哪一個可能會有二義性?已知:inta(4),b(5);A.a+b<<3B.++a*b++C.(a=3)+a++D.b+(a=3)2.下列關于結構的定義中,有幾處錯誤?structd{inta;doublea;}a,d;A.1B.2C.3D.43.下列關于goto語句的描述中,哪個是正確的?A.goto語句可在一個文件中隨意轉向;B.goto語句后面要跟上一個它所轉向的語句;C.goto語句可以同時轉向多條語句;D.goto語句可以從循環體內轉到循環體外。4.下列哪一個描述是關于引用調用的?A.形參是指針,實參是地址值;B.形參是引用,實參是變量。C.形參和實參都是變量;D.形參和實參都是數組名;5.定義函數模板需使用下列哪一個關鍵字?A.classB.inlineC.templateD.operator6.下列關于成員函數特征的描述中,哪個是錯誤的?A.成員函數一定是內聯函數;B.成員函數可以重載;C.成員函數的函數體可以為空;D.成員函數可以是靜態的。7.已知一個類A,下列哪個是指向成員函數的指針?假設類A有公有成員voidf()和inta。A.A*p;B.intA::*pc=&A::a;C.void(A::*pa)();D.A**pp;8.下列關于new運算符的描述中,哪個是錯誤的?A.它可以用來動態創建對象和對象數組;B.使用它創建的對象或對象數組,可以使用delete刪除;C.使用它創建對象時要調用構造函數;D.使用它創建對象數組時必須指定初始值。9.下列對派生類的描述中,哪個是錯誤的?A.一個派生類可以作另一個派生類的基類;B.派生類中繼承的基類成員的訪問權限到派生類仍然保持不變。C.派生類至少有一個基類;D.派生類的成員除了自己的成員外,還包含它的基類的成員;10.下列運算符中,哪一個不能重載?A.<<B.>>C.()D.?:三、試編寫求兩個數中最小值的函數模板。(5分)四、輸入一字符串,去掉當中的重復字符。如字符串“ABADB”,去掉重復字符后的字符串應為“ABD”。(10分)五、求下列分數序列的前15項之和。(10分)六、下面是一個利用重載運算符實現復數加和乘的類。在該類中復數加運算的實現代碼已完成,但復數乘運算還未完成,試在類體外完成之。(7分)classcomplex{public:complex(doubler=0,doublei=0){real=r;imag=i;}complexoperator+(constcomplex&c) {returncomplex(real+c.real,imag+c.imag);}complexoperator*(constcomplex&c);private:doublereal,imag;};七、找出下列程序中的語法錯誤,并注明出錯類型。(8分)classA{virtualA(){};};classB:A{};intadd(intx,inty,intz=10){returnx+y+z;}intadd(intx,inty){returnx+y;}voidmain(){intx;constintz=5;int&y=x+1;z=x;x=&z;add(1,2);if(x==1)continue;x=newint[5];return1;}八、分析下列程序,并回答后面的問題。(10分)程序內容如下:#include<iostream.h>classA{public:A(inti=0,intj=0){a1=i;a2=j;}virtualvoidPrint(){cout<<a1+a2<<endl;}protected: inta1,a2;};classB:publicA{public: B(inti=0,intj=0):A(i,j){} voidPrint() {cout<<a1-a2<<endl; }};classC:publicA{public: C(inti=0,intj=0):A(i,j){} voidPrint() {cout<<a1*a2<<endl; }};voidmain(){ inti=10,j=8; Aa(i,j); Bb(i,j); Cc(i,j); A*m[3]={&c,&b,&a}; for(intn=0;n<3;n++)m[n]->Print(); A&ra=c; ra.Print(); Aaa=c; aa.Print();}請回答下列問題:(1)執行該程序后,輸出結果是什么?(2)該程序中哪些語句采用了動態聯編?(3)去掉virtualvoidPrint()中的關鍵字virtual后,該程序的輸出結果是什么?九、分析下列程序,并回答后面的問題。(10分)程序內容如下:#include<iostream.h>classA{public:A(inti){ a=i; cout<<"a="<<a<<endl;}~A(){cout<<"A'sdestructor"<<a<<endl;}inta;};classB:virtualpublicA{public: B(inti,intj):A(i){cout<<"B:"<<j<<endl;}};classC:virtualpublicA{public:C(inti,intj):A(i){cout<<"C:"<<i+j<<endl;}};classD:publicB,publicC{public: D(intk1,intk2,intk3,intk4):B(k1,k2),C(k4,k3),A(k1) { cout<<"D:"<<k4<<endl; }};voidmain(){Dd(1,2,3,4);Aa(5);a=A(6);cout<<"a.a="<<a.a<<endl;cout<<"d.a="<<d.a<<endl;}請回答下列問題:(1)執行該程序后,輸出結果是什么?(2)去掉classB:virtualpublicA和classC:virtual
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國足療市場經營管理風險及未來營銷格局研究研究報告
- 高等代數2試題B及答案
- 2025-2030中國購物中心建設行業深度發展研究與企業投資戰略規劃報告
- 2025-2030中國豇豆行業市場現狀分析及競爭格局與投資發展研究報告
- 2025年塑料制品行業環保政策調整下的市場策略優化研究報告
- 2025-2030中國補充醫療保險行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國融資租賃行業發展分析及投資價值預測研究報告
- 水泥廠巡檢工試題及答案
- 2025-2030中國菊粉粉行業市場現狀供需分析及投資評估規劃分析研究報告
- 2025-2030中國草菇市場現狀動態與未來發展預測分析研究報告
- 學術英語智慧樹知到答案2024年南開大學
- 高一上學期化學人教版(2019)必修第一冊+++常見反應方程式
- 數控車床自動上下料機械手結構設計
- 智能化礦山技術培訓課件
- 12G614-1砌體填充墻結構構造
- 常見英文字母組合發音大全
- 2023-2024學年安徽省合肥168中學八下物理期末質量跟蹤監視試題及答案解析
- 侵權法智慧樹知到期末考試答案章節答案2024年四川大學
- 【上海】漕涇鎮金山區水庫村鄉村振興發展規劃方案
- 兩家公司成立新公司合作協議書
- 2023年消毒技術考試:消毒技術專業實踐能力真題模擬匯編(共440題)
評論
0/150
提交評論