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

下載本文檔

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

文檔簡(jiǎn)介

大學(xué)C++期末考試試卷(含答案)中央廣播電視大學(xué)二年級(jí)期末考試試卷本試卷滿分共100分考試時(shí)間:120分鐘項(xiàng)目一二三四五總分滿分186103630100得分一、單項(xiàng)選擇題(本大題共6小題,每小題3分,共18分)在每小題列出的四個(gè)備選項(xiàng)中,只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)內(nèi)。錯(cuò)選、多選或未選均無分。1.說明內(nèi)聯(lián)函數(shù)的關(guān)鍵字是()。A.inline B.virtual C.define D.static2.假定CAb為一個(gè)類,則執(zhí)行CAboX;語句時(shí)將自動(dòng)調(diào)用該類的()A.有參構(gòu)造函數(shù) B.無參構(gòu)造函數(shù)C.拷貝構(gòu)造函數(shù) D.賦值重載函數(shù)3.cin是某個(gè)類的標(biāo)準(zhǔn)對(duì)象的引用,該類是()。 A.ostream (output) B.istream(input) C.stdout D.stdin4.下面的哪個(gè)保留字不能作為函數(shù)的返回類型?()A.void(無返回)B.int(整形) C.newD.long(長整形)5.由于數(shù)據(jù)隱藏的需要,靜態(tài)數(shù)據(jù)成員通常被說明為()。A.私有的B.公有的 C.保護(hù)的 D.不可訪問的6.基類和派生類可以分別稱為()。 A.“大類”和“小類” B.“父類”和“子類” C.“小類”和“大類” D.“子類”和“父類”二、判斷正誤題(本大題共2小題,每小題3分,共6分)判斷正誤,在題后的括號(hào)內(nèi),正確的劃上“√”錯(cuò)誤的劃上“×”。1.內(nèi)聯(lián)函數(shù)的定義必須出現(xiàn)在第一次調(diào)用內(nèi)聯(lián)函數(shù)之前。 ()2.使用new運(yùn)算符創(chuàng)建數(shù)組時(shí),可以為該數(shù)組指定初始值。 ()三、填空題(本大題共5小題,每小題2分,共10分)不寫解答過程,將正確的答案寫在每小題的空格內(nèi)。錯(cuò)填或不填均無分。1.設(shè)函數(shù)max是由函數(shù)模板實(shí)現(xiàn)的,并且max(3.5,5)和max(3,5)都是正確的函數(shù)調(diào)用,則此函數(shù)模板具有()個(gè)類型參數(shù)。2.在C++中,函數(shù)重載與虛函數(shù)幫助實(shí)現(xiàn)了類的()性。3.由static修飾的數(shù)據(jù)成員為該類的所有對(duì)象()。4.重載函數(shù)在參數(shù)類型或參數(shù)個(gè)數(shù)上不同,但()相同。5.使用new建立的動(dòng)態(tài)對(duì)象在不用時(shí)必須用()釋放所占用的空間。四、程序分析題(本大題共3小題,每小題12分,共36分)給出下面各程序的輸出結(jié)果。1.閱讀下面程序,寫出輸出結(jié)果。#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坐標(biāo) intm_iPositionY; //X坐標(biāo)};intmain(void){ CPositionoPostion1; constCPositionoPostion2(6,8);//默認(rèn)構(gòu)造函數(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;}請(qǐng)寫出上面程序的輸出結(jié)果:2.閱讀下面程序,寫出輸出結(jié)果。#include<iostream>usingnamespacestd;template<classType>classCTest{public: CTest(Typem_tArray[],intiSize):m_pArray(m_tArray)//構(gòu)造函數(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;}請(qǐng)寫出上面程序的輸出結(jié)果:3.閱讀下面程序,寫出輸出結(jié)果。#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;}請(qǐng)寫出上面程序的輸出結(jié)果:六、編程題(本大題共2個(gè)小題,每小題15分,共30分)1.編寫一個(gè)函數(shù)模板,用于求數(shù)組中各元素之和,并編寫測(cè)試程序進(jìn)行測(cè)試。函數(shù)模板聲明如下:template<classType>TypeSum(TypetArray[],intiSize)2.定義一個(gè)抽象類CShape,它有一個(gè)純虛函數(shù)GetLength();派生出四邊型類CSquare和圓類CCircle,在派生類中重載函數(shù)GetLength(),用于求圖形的周長,編寫測(cè)試程序進(jìn)行測(cè)試。大學(xué)C++期末考試試卷參考答案一、單項(xiàng)選擇題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分)給出下面各程序的輸出結(jié)果。1.參考答案:01618682.參考答案:1081.61.83.參考答案:61462020六、編程題(本大題共2個(gè)小題,每小題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等.壓縮文件請(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論