201510月自考C++程序設計04737試題與答案解析_第1頁
201510月自考C++程序設計04737試題與答案解析_第2頁
201510月自考C++程序設計04737試題與答案解析_第3頁
201510月自考C++程序設計04737試題與答案解析_第4頁
201510月自考C++程序設計04737試題與答案解析_第5頁
免費預覽已結束,剩余7頁可下載查看

下載本文檔

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

文檔簡介

1、2015年10月高等教育自學考試全國統一命題考試C+程序設計試卷(課程代碼04737)本試卷共10頁,滿分100分,考試時間150分鐘。考生答題注意事項:1 .本卷所有試題必須在答題卡上作答。答在試卷上無效,試卷空白處和背面均可作草稿紙。2 .第一部分為選擇題。必須對應試卷上的題號使用2B鉛筆將“答題卡”的相應代碼涂黑。3 .第二部分為非選擇題。必須注明大、小題號,使用0. 5毫米黑色字跡簽字筆作答 o4 .合理安排答題空間,超出答題區域無效。第一部分選擇題一、單項選擇題(本大題共20小題,每小題1分。共20分)在每小題列出的四個備選項中只有一個是符合題目要求的,請將其選出并將“答題卡” 的相

2、應代碼涂黑。未涂、錯涂或多涂均無分。1 .在C+語言中用于注釋的標識符是D. /A. &B. /C. *2 .編寫C+強序一般需經過的幾個步驟依次是A.編輯、調試、編譯、連接B.編譯、調試、編輯、連接C.編譯、編輯、連接、運行D.編輯、編譯、連接、運行3 .要求通過函數來實現一種不太復雜的功能,并且要求加快執行速度,選用A.內聯函數B.重載函數4 .設x=8,執行語句 Y=x+,則y等于 A. 6B. 75 .下列運算符中,優先級最高的是A. *B. 一6 .關于new運算符的下列描述中,錯誤的是A.它可以用來動態創建對象和對象數組B.使用它創建的對象和對象數組可以使用運算符C.使用它

3、創建對象時要調用構造函數D.使用它創建對象數組時必須指定初始值7 .存儲下列數據,占用存儲字節最多的是A. 0B. '0'8 .關于類和對象不正確的說法是A.類是一種類型,它封裝了數據和操作C. 一個類的對象只有一個9 .下列有關構造函數的描述中,正確的是A .構造函數可以帶有返回值C.構造函數必須帶有參數10 .假定a為一個整型數組名,則元素A. a+4B. a+811 .類中能訪問靜態成員的函數是C.內部函數D.函數模板C. 9D. 8C. &&D. >=delete刪除C. ' 0''D. 0. 0B.對象是類的實例D. 一個

4、對象必屬于某個類B.構造函數的名字與類名完全相同D.構造函數必須定義,不能缺省 a4的字節地址為C. a+16D. a+321 / 12C.構造函數D.析構函數B. int&refa10D. int*pi , *&pref=piA.虛函數B.靜態成員函數12.下列說明語句中正確的是A. int a, &ra=a, &&ref=raC. int a, &ra=a, & *refp=&ra13 .關于對象概念的描述中,說法錯誤的是A.對象就是C語言中的結構體B.對象代表著正在創建的系統中的一個實體C.對象是類的一個變量D.對象之間的信

5、息傳遞是通過消息進行的14 .有關多態性說法不正確的是A. C+語言的多態性分為編譯時的多態性和運行時的多態性B.編譯時的多態性可通過函數重載實現C.運行時的多態性可通過模板和虛函數實現D.實現運行時多態性的機制稱為動態多態性15.關于友元函數的描述中,錯誤的是A.友元函數不是成員函數B.友元函數只能訪問類中私有成員C.友元函數破壞隱藏性,盡量少用D.友元函數說明在類體內,使用關鍵字16 .類中定義的成員默認訪問屬性為A. publicB. private17 .拷貝構造函數的參數是A.某個對象名C.某個對象的引用名18 .關于類模板的說法正確的是A.類模板的主要作用是生成抽象類friendC

6、. protectedD. friendB.某個對象的成員名D.某個對象的指針名B.類模板實例化時,編譯器將根據給出的模板實參生成一個類C.在類模板中的數據成員具有同樣類型D.類模板中的成員函數沒有返回值19 .下列有關重載函數的說法中正確的是A.重載函數必須具有不同的返回值類型B.重載函數參數個數必須相同C.重載函數必須有不同的形參列表D.重載函數名可以不同20 .當一個類的某個函數被說明為virtual時,在該類的所有派生類中的同原型函數A.都是虛函數B.只有被重新說明時才是虛函數C.都不是虛函數D.只有被重新說明為virtual時才是虛函數第二部分非選擇題二、填空題(本大題共20小題,每

7、小題1分,共20分)請在答題卡上作答。21 . C語言中scanf命令在 C+43改用:cin22 .假定類AB中有一個公用屬性的靜態數據成員static int bb ;在類外不通過對象名給該成員bb賦值為10的寫法:int AB; bb=10;2 / 1223 .在類內部定義的公有(public)數據可以在類外進行存取,但保護 protected數據和私有 (private)數據不能在類外直接存取。24 .在C+中,虛函數幫助實現了類的多態性。25 .如果要把類 B的成員函數void fun()說明為類A的友元函數,則應在類A中加入語句26 .執行下列程序 double a=3. 1415

8、926, b=3. 14; cout<<setprecision(5)<<a<< '', < << setprecision(5)<<b<<endl ;程序的輸出結果是 。27 .在C+中,訪問一個指針所指向的對象的成員所用的指向運算符是 。28 .基類的公有成員在派生類中的訪問權限由 決定。29 .由const修飾的對象稱為。30 .如果通過同一個基類派生一系列的類,則將這些類總稱為 。31 .為了實現運行時的多態性,派生類需重新定義基類中的 。32 .在C+中有兩種參數傳遞方式:傳值和傳 。33

9、. C+中ostream的直接基類 。34 .已知int*p=NULL,使用new為指針P申請一個存儲大小為10的存放int型的空間,代碼為。35 .在編譯指令中,宏定義使用 指令。36 .每個對象都是所屬類的一個 。37 .函數重載時,編譯系統會根據 或形參的個數來區分。38 .靜態成員函數、友元函數、構造函數和析構函數中,不屬于成員函數的是 。40.局部對象和全局對象中,在同一程序中 生存期最長。三、改錯題(本大題共5小題,每小題4分,共20分)請在答題卡上作答。下面的程序段中有一處錯誤,請在答題卡上抄寫錯誤所在行并指出錯誤原因。4L #inclii<lc < iotream

10、> using naiiiecpace &td;int * p; public;base (int a) | p =癡I 山t get( ) lelurn p;I h int nuin() 1 baae b(3); cwt « b, gpt();3 / 1242. #include < loetream > using ziamespace sid; class base int a;int get() | return a;!void setValue( int b) | a = b;1int geta( ) J return a;II;int main(

11、)base b;b. setValuc(7)-return 0;43. #inclu<le < iostream 1 uing namesjuiee atd ; dass A |3gtic int x ; int y;public;4(int b) jk =日彳y H b:Ii&t 騏。I return 工 > y;i h 工=5 + int main() IA Ml,2”emit <q a. gct( ) « smdl* return 0;4 / 1244. #inc)ude < iostream > using n&

12、mespace std ; class Ajint k: public:A (ini a) |X = A;I .void set( tcii a) |x * aj.2d wO ItXXit « x « cndlj j!I ;int main)Iconst A »(4);a, set(6);曲歐():a. aet( 10) *» 薩t( ) 3 return 0 ;I45. include ViostMm > utng namespace std; class base |int a, b ;public:roid setzero( ) 工 = 0;

13、 y = 0;Ivoki sriow ) icorn «* « " w «y«endl;I l» . int uiidii( ) |Lwue b;b. sfitM:ro(OfO);giurn 0 ;i四、完成程序題(本大題共5小題,每小題4分,共20分) 請在答題卡上作答。46 .用簡單選擇法對10個數排序,使其從小到大排列。5 / 12ffincludc* stdafc h*#include < iagtream > u威ng Donkespace sld ; ini uniun(void)Iint i;int rmm1

14、0 31j ;for()ein » num i ;for(i = 0;i <9;i 什)for(j = i 41 ;j <10;j + ) , num j)tt = numi;num f 1 - auntij;for(i =0;i < 10;i + ) cout «T»u.m( i « *47 .打印以下圖案:*率事*&d出.h*#iod.ude < io4tremn >u4用 nuiTMHcr std;v/d n1aEfl( vmd )»t j.ili "力控制行號I砧r(J = l控制空格eo

15、fit « ' " f»r()目控制星號 cout « “ * n eoiir « *n cii 二average()計算平均成績,主48.任意輸入10個同學的成績,計算其平均成績。要求用函數 函數輸入數據并輸出結果。6 / 12#inelude1T stdafx. hM<include c iostream >lining nHmspacc std; void main( void) (float svf;ragE( float «);flcAl 箕*for(J! cin » score i ;Icou

16、t « " average i" « average ( score) « endl ;1flout avemgM float h!(kal sum = Dqfor( int i =0;i < 10;i + ) |TchiTn ( wrVlQ);I49.編一個函數to_ lower(),實現將字符串中的大寫字母轉換成相應小寫字母。主函數輸 入數據并輸出結果。include11 stdafi. h"# include <iostream >*void main( void)ivoid to_kwer(char a 1

17、);char atr 10;cin » str;to_lower( str);cqui « str « endl ;Iv4id g lowftr( charI 一for( int i =0 J < 10&&ai ! , 0* ;i + )if()ai + -32;150 .下面程序用來求直角三角形斜邊長度。7 / 12tfiiLclude < icstresm. h >#include < math, h >class Lire;class Ptant Mvalt" double x + y;public i

18、Paiat<double i =0,d加hie j =0)|x =U;=j;1Foint( Point. &p)f. m) hclass Line | private;Point pi B p2 ; pubLc*Linft( Point &xpl ,Point &xp2) ;| ) double GetLer.pth( ) jI : double Jne ; ; G«tl jengtL ()| double dx p2i x. - pl.double dy =p2 + y pk y;me wpt( dx dx + dy * dj );I void mai

19、n () Point pl,p2(t,8);Line LI (pl fp2);cout« LL GtLeiitli ( ) «. endL: I五、程序分析題(本大題共2小題,每小題5分,共10分) 請在答題卡上作答。51 .給如下面程序輸出結果。8 / 12clus Brbc I private: int Y;int y =0) | Y =y;cout « * B*se(w « y « 71 ) n" ; | -( ) gut« " - Ba»e ( ) n* ; |void prim( ) cout

20、« Y « 1T * ; |I 1class Derived :public Base| private 1int Z;puKliciDerived ( int y f int z) sBwefy)tout « ” Derived( R « y « " , H « tI_( ) f COUt « r - Derived ( ) nH j jvoid primt )! B«e: :prim();cmt « Z « endl ;II ;gid main< )|Derived d(lO

21、P20)jd. prinl();I52.給出下面程序輸出結果。#include "iostxeam, h'fvoid tnain()int it ,y tzx =3;X = +3L;cout « rrx =T, «x «" ;y « ,r «y ;z = lf «z«endl; J六、程序設計題(本大題共l小題,共10分)請在答題卡上作答。53.寫一個程序,定義一個抽象類Shape,由它派生3個類:Square(正方形)、Trapezoid(梯形)和Triangle(三角形)。用虛函數分別計算幾種

22、圖形面積、并求它們的和。要求用基9 / 12類指針數組,使它每一個元素指向一個派生類對象。ttinclude < iostream. h >class Shape public :virtual double area( ) const = 0*I ;10 / 12翳密*啟用前2015 T 10月高等教育自學考試全國統一命題考試C+4程序設計試題答案及津分參考課程代科04737)一4號逝擇星【本大跟共知小鵬,每小且分,并加分】I. B 2. D 3. A .It 12 D 11 A4 D&4. C15,8,C9. & *.C18,fi 1/ C20. A二.填空本大

23、®排20小JH,綏小區1玉,用如分)21. tin學態性嬴KH實例242730133622. iniABrhk=iQ;2S. friend void B ”創口:24.訪同控制方式或維承方式31.虛函效34 P x mw intlOj 3工形分的類鞭也 保護(阿皿詞)敷捋 2E3441A, 3. A39. friend rad B:/MJ*三.我懾囂t本大JH共S力心,本小題。分,挽M分)3&.4fl.漸對象 引用 #define 友元函敲 金局*44.答案:即5p;«B g。的鼓的逗何值或黃是皿at亮置,前代碼中即。返回的 釜面步指針,自考單科包過QQ165816

24、13腓儀麗ETurn p;博就為rrlum p;等竄入lVBlUo(7)彳是私府函數,不麓更接湄麗.修改:將h%Hi城)函數聲明為公有函數.答案R餐岳繼燦,為除塞數據成員,嚷改假形式錯謾性改出L A-JI =5:答案刈由A M4);睛,很是需時復不能被更新n修改;將&定義為非常對象.答案由,丫/川。?。磺樽S,因為關中不存在帶Ti兩個形壽的meeG函鞅q極改自h,*e&n>(。力修改為b Miww( >|四一亮成程師癌1本大JS共$小艇,每小離*令.共2。分)餐案 dcti.OJf ICM j 答案 prti i 工 I ; i O科 1 答案 tiftfi-。曲GWi” 答案】ufilnK minr5pBrr ud 者*四*I Uiic:nm(j) -1n =9:n、二2 * i - i ;h 一-juirn *= >( i球寸 X 'jV&直n;il v "I plCipl) hp2( <p2j(解析1左用弟的It用,定義Uik是因面類的發沅巽,成電對塾的柳此化采舊列點的 形式a耳、皆序分析J

溫馨提示

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

評論

0/150

提交評論