大學C++期末考試試卷(含答案)_第1頁
大學C++期末考試試卷(含答案)_第2頁
大學C++期末考試試卷(含答案)_第3頁
大學C++期末考試試卷(含答案)_第4頁
大學C++期末考試試卷(含答案)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

大學C++期末考試試卷(含答案)中央廣播電視大學二年級期末考試試卷本試卷滿分共100分考試時間:120分鐘項目一二三四五總分滿分186103630100得分一、單項選擇題(本大題共6小題,每小題3分,共18分)在每小題列出的四個備選項中,只有一個是符合題目要求的,請將其代碼填寫在題后的括號內。錯選、多選或未選均無分。1.說明內聯(lián)函數(shù)的關鍵字是()。A.inline B.virtual C.define D.static2.假定CAb為一個類,則執(zhí)行CAboX;語句時將自動調用該類的()A.有參構造函數(shù) B.無參構造函數(shù)C.拷貝構造函數(shù) D.賦值重載函數(shù)3.cin是某個類的標準對象的引用,該類是()。 A.ostream (output) B.istream(input) C.stdout D.stdin4.下面的哪個保留字不能作為函數(shù)的返回類型?()A.void(無返回)B.int(整形) C.newD.long(長整形)5.由于數(shù)據(jù)隱藏的需要,靜態(tài)數(shù)據(jù)成員通常被說明為()。A.私有的B.公有的 C.保護的 D.不可訪問的6.基類和派生類可以分別稱為()。 A.“大類”和“小類” B.“父類”和“子類” C.“小類”和“大類” D.“子類”和“父類”二、判斷正誤題(本大題共2小題,每小題3分,共6分)判斷正誤,在題后的括號內,正確的劃上“√”錯誤的劃上“×”。1.內聯(lián)函數(shù)的定義必須出現(xiàn)在第一次調用內聯(lián)函數(shù)之前。 ()2.使用new運算符創(chuàng)建數(shù)組時,可以為該數(shù)組指定初始值。 ()三、填空題(本大題共5小題,每小題2分,共10分)不寫解答過程,將正確的答案寫在每小題的空格內。錯填或不填均無分。1.設函數(shù)max是由函數(shù)模板實現(xiàn)的,并且max(3.5,5)和max(3,5)都是正確的函數(shù)調用,則此函數(shù)模板具有()個類型參數(shù)。2.在C++中,函數(shù)重載與虛函數(shù)幫助實現(xiàn)了類的()性。3.由static修飾的數(shù)據(jù)成員為該類的所有對象()。4.重載函數(shù)在參數(shù)類型或參數(shù)個數(shù)上不同,但()相同。5.使用new建立的動態(tài)對象在不用時必須用()釋放所占用的空間。四、程序分析題(本大題共3小題,每小題12分,共36分)給出下面各程序的輸出結果。1.閱讀下面程序,寫出輸出結果。#include<iostream>usingnamespacestd;classCPosition{public: CPosition(intiPositionX=0,intiPositionY=0):m_iPositionX(iPositionX) { m_iPositionY=iPositionY; } intGetPositionX()const { returnm_iPositionX; } intGetPositionY()const { returnm_iPositionY; } voidSetPositionX(intiPositionX) { m_iPositionX=iPositionX; } voidSetPositionY(intiPositionY) { m_iPositionY=iPositionY; }private: intm_iPositionX; //X坐標 intm_iPositionY; //X坐標};intmain(void){ CPositionoPostion1; constCPositionoPostion2(6,8);//默認構造函數(shù) cout<<oPostion1.GetPositionX()<<endl; oPostion1.SetPositionX(16); cout<<oPostion1.GetPositionX()<<endl;//16 oPostion1.SetPositionY(18); cout<<oPostion1.GetPositionY()<<endl;//18 cout<<oPostion2.GetPositionX()<<endl; cout<<oPostion2.GetPositionY()<<endl;//6,8 return0;}請寫出上面程序的輸出結果:2.閱讀下面程序,寫出輸出結果。#include<iostream>usingnamespacestd;template<classType>classCTest{public: CTest(Typem_tArray[],intiSize):m_pArray(m_tArray)//構造函數(shù) { m_iSize=iSize; } voidPrint()const { for(inti=0;i<m_iSize;i++) { cout<<m_pArray[i]<<""; } }private: Type*m_pArray; intm_iSize;};intmain(void){ inta[]={1,0,8}; doubleb[]={1.6,1.8}; CTest<int>oTest1(a,3); oTest1.Print(); CTest<double>oTest2(b,sizeof(b)/sizeof(double)); oTest2.Print(); cout<<endl; return0;}請寫出上面程序的輸出結果:3.閱讀下面程序,寫出輸出結果。#include<iostream>usingnamespacestd;template<classType>classCTest{public: CTest(TypetA=0,TypetB=0,TypetC=0):m_tC(tC) { m_tA=tA; m_tB=tB; } voidPrint() { cout<<m_tA<<endl; cout<<m_tB<<endl; } voidPrint()const { cout<<m_tC<<endl; } private: Typem_tA,m_tB; constTypem_tC;};intmain(void){ CTest<float>oTest1; oTest1.Print(); CTest<int>oTest2(1,9,6); oTest2.Print(); constCTest<double>oTest3(0,6,1.8); oTest3.Print(); cout<<endl; return0;}請寫出上面程序的輸出結果:六、編程題(本大題共2個小題,每小題15分,共30分)1.編寫一個函數(shù)模板,用于求數(shù)組中各元素之和,并編寫測試程序進行測試。函數(shù)模板聲明如下:template<classType>TypeSum(TypetArray[],intiSize)2.定義一個抽象類CShape,它有一個純虛函數(shù)GetLength();派生出四邊型類CSquare和圓類CCircle,在派生類中重載函數(shù)GetLength(),用于求圖形的周長,編寫測試程序進行測試。大學C++期末考試試卷參考答案一、單項選擇題1.A 2.B 3.B 4.C 5.A6.A 二、判斷正誤題1.參考答案:√2.參考答案:√P210 三、填空題1.參考答案:22.參考答案:多態(tài)3.參考答案:共享4.參考答案:函數(shù)名5.參考答案:delete四、程序分析題(本大題共4小題,每小題5分,共20分)給出下面各程序的輸出結果。1.參考答案:01618682.參考答案:1081.61.83.參考答案:61462020六、編程題(本大題共2個小題,每小題8分,共16分)1.參考程序:#include<iostream>usingnamespacestd;template<classType>TypeSum(TypetArray[],intiSize){ TypetSum=0; for(inti=0;i<iSize;i++) { tSum=tSum+tArray[i]; } returntSum;}intmain(void){ inta[]={1,2,3}; doubleb[]={1.5,2.8,8.9,8}; cout<<Sum(a,3)<<endl; cout<<Sum(b,4)<<endl; return0;}2.參考程序:#include<iostream>usingnamespacestd;classCShape{public: virtualdoubleGetLength()const=0;};classCSquare:publicCShape{public: CSquare(doubledWidth,doubledHeight) { m_dWidth=dWidth; m_dHeight=dHeight; } doubleGetLength()const { return2*(m_dWidth+m_dHeight); }private: doublem_dWidth,m_dHeight;};classCCircle:publicCShape{public: CCircle(doubledRadius) { m_dRadius=dRadius; } doubleGetLength()const

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論