



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C+程序設(shè)計(jì)試題一、單項(xiàng)選擇題( 本大題共20 小題 . 每小題 1 分. 共 20 分 )在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的. 請(qǐng)將其代碼填寫在題后的括號(hào)。錯(cuò)選、多選或未選均無分。1.C+源程序文件擴(kuò)展名為(A )A.cppB.hC.1ib D.obj2. 在 C+中使用流進(jìn)行輸入輸出 . 其中專用于從鍵盤進(jìn)行輸入的流是( B )A.cerrB.cinC.coutD.cfile3. 包含自定義頭文件 file.h 的預(yù)處理指令是 ( D ) A.#define B.#include file.hC.#define file.hD.#includefile.h4. 用于標(biāo)識(shí)十六
2、進(jìn)制前綴或后綴是 ( D )A. 元B.后綴 L 或 eC. 前綴零D. 前綴 0x5. 設(shè)存在整型變量int x.則下列句與其它三項(xiàng)含義不同的是( A )A.int* p=&x; B.int& p=x;C.int & p=x;D.int &p=x;6. 在定義類成員時(shí) . 為產(chǎn)生封裝性 . 則需使用哪個(gè)關(guān)鍵字 ( D )A.publicB.publishC.protectedD.private7. 設(shè)函數(shù) void swap(int&.int&)將交換兩形參的值. 如兩整型變量int a=10;int b=15;則執(zhí)行 swap(a.b) 后 .a 、b 值分別為 (C )8. 函數(shù)默認(rèn)參數(shù)
3、在函數(shù)原型中說明 . 默認(rèn)參數(shù)必須放在參數(shù)序列的 ( C )A. 前部 B.中部C. 后部D. 兩端9. 設(shè)存在函數(shù) int min() 返回兩參數(shù)中較小值 . 若求三者中最小值 . 下列表達(dá)式中錯(cuò)誤的是 ( B)A.int m=min(min(15.26).min(15.47);C.int m=min(15.min(47.26);D.int m =min(min(47.26).16);10. 下列函數(shù)不能和函數(shù)void print(char)構(gòu)成重載的是( C )A.int print(int);B.void print(char.char);C.int print(char)
4、;D.void print();11. 在下列成對(duì)的表達(dá)式中 . 運(yùn)算結(jié)果類型相同的一對(duì)是 ( D )A.7 2 和 7.0 2.0B.7 2.0 和 7 2 和 72 2.0 和 7.0 2l2. 聯(lián)函數(shù)的特點(diǎn)是( D )A. 減少代碼量 . 加快訪問速度B.減少代碼量 . 減緩訪問速度C. 增加代碼量 . 減緩訪問速度D. 增加代碼量 . 加快訪問速度13. 類的私有成員可在何處被訪問 ( A ) A. 本類的成員函數(shù)中B. 本類及子類的成員函數(shù)中C. 通過對(duì)象名在任何位置D. 不可訪問14. 類的構(gòu)造函數(shù)在以下什么情況下會(huì)被自動(dòng)調(diào)用 ( B ) A. 定義成員函數(shù)時(shí)B. 定
5、義對(duì)象時(shí)C. 定義數(shù)據(jù)成員時(shí)D. 定義友元函數(shù)時(shí)15. 下列關(guān)于析構(gòu)函數(shù)描述正確的是 ( D )A. 可以重載B.函數(shù)體中必須有delete語句C. 返回類型必須是void 類型D. 不能指定返回類型16. 設(shè)有函數(shù) T Sum(T x.T y)return x+y ;. 其中 T 為模板類型 . 則下列語句中對(duì)該函數(shù)錯(cuò)誤的使用是( D)A.Sum(1.2) ;C.Sum(A . C) ;D.Sum(A.C);17. 下列哪個(gè)編譯指令屬于條件編譯指令( C )A.#includeB.#defineC.#elseD.#pragma18. 關(guān)于類的靜態(tài)成員函數(shù)描述錯(cuò)誤的是 ( A ) A. 在創(chuàng)建
6、對(duì)象前不存在B. 不能說明為虛函數(shù)C. 不能直接訪問非靜態(tài)函數(shù)D. 不是對(duì)象的成員l9. 如果類 A 被聲明成類B 的友元 . 則 (D )A. 類 A 的成員即類B 的成員B.類 B 的成員即類A 的成員C. 類 A 的成員函數(shù)不得訪問類B 的成員D. 類 B 不一定是類A 的友元20. 派生類的對(duì)象可以訪問以下那種情況繼承的基類成員( D )A. 私有繼承的私有成員B. 公有繼承的私有成員C. 私有繼承的保護(hù)成員D. 公有繼承的公有成員二、填空題 ( 本大題共20 小題 . 每小題 1 分. 共 20 分)請(qǐng)?jiān)诿啃☆}的空格中填上正確答案。錯(cuò)填、不填均無分。21. 若使用標(biāo)準(zhǔn)輸出流把整型變量
7、a 的值輸出到屏幕上 . 實(shí)現(xiàn)此操作的 C+語句是 couta 。22.C+將數(shù)據(jù)從一個(gè)對(duì)象流向另一個(gè)對(duì)象的流動(dòng)抽象為“流” . 從流中獲取數(shù)據(jù)的操作稱為 提取操作 。23. 執(zhí)行下列代碼int b=100;coutHex: hexb ;程序的輸出結(jié)果是Hex:64 。24. 靜態(tài)聯(lián)編所支持的多態(tài)性稱為 編譯時(shí)或編譯 的多態(tài)性。25.C+程序必須有且只有一個(gè)主函數(shù). 其函數(shù)名為main 。26. 寫出聲明一個(gè)復(fù)數(shù)對(duì)象的語句 . 并使該對(duì)象被初始化為 2.2+1.3i. 此聲明語句是complex num(2.2,1.3)或 complex num(2.2,1.3)。27. 若有函數(shù)定義為:in
8、t add(int ml=0.int m2=2.int m3=4)return ml+m2+m3;在主函數(shù)中有;則執(zhí)行此語句后s 的值為 15 28 。28.C+中使用 inline關(guān)鍵字說明函數(shù)為聯(lián)函數(shù)。29. 在源程序中有宏定義:#define PI 3.14.則若不想使該宏定義影響到程序的其它地方. 可以使用 #undef PI刪除該宏定義。30. 類和其它數(shù)據(jù)類型不同的是 . 組成這種類型的不僅可以有數(shù)據(jù) . 還可以有對(duì)數(shù)據(jù)進(jìn)行操作的 函數(shù)或成員函數(shù) 。31. 有下列代碼int a=0; double b=0 ; cinab ;當(dāng)用鍵盤輸入1.25 時(shí) .b= 0.25 。32. 對(duì)于
9、類 Point而言 . 其析構(gòu)函數(shù)的定義原型為Point:Point( )或Point( )。33. 對(duì)象成員構(gòu)造函數(shù)的調(diào)用順序取決于這些對(duì)象在類中說明的順序給出的順序 無關(guān) 。. 與它們?cè)诔蓡T初始化列表中34. 類的簡(jiǎn)單成員函數(shù)是指聲明中不含const 、 volatile 、 static 關(guān)鍵字的函數(shù)。35. 與操作對(duì)象的數(shù)據(jù)類型相互獨(dú)立的算法稱為泛型算法 。36. 從一個(gè)或多個(gè)以前定義的類產(chǎn)生新類的過程稱為派生 。37. 在 vector類中向向量尾部插入一個(gè)對(duì)象的方法是push_back(const T&)。38.C+中用于動(dòng)態(tài)創(chuàng)建對(duì)象. 并返回該對(duì)象的指針的關(guān)鍵字是new。39.C
10、+的流類庫預(yù)定義的與標(biāo)準(zhǔn)輸出設(shè)備相聯(lián)接的流是cout 。40. 執(zhí)行下列代碼coutnoshowpoint123.0;程序輸出結(jié)果是123 。三、改錯(cuò)題 ( 本大題共5 小題 . 每小題 2 分. 共 10 分)下面的類定義中有一處錯(cuò)誤. 請(qǐng)用下橫線標(biāo)出錯(cuò)誤所在行并給出修改意見。41.#includeclass fprivate:float x.y;public: f(float a.float b)x=a; y=b; float max()return(xy)?x: y; 求最大值;main( );couta.max( )endl;return(xy)?x:y;或 return(xy)?y:
11、x;42.#includeclass testprivate:int x;public: test(int a)x=a;void set(int a)x=a; void get()coutxendl; main()const test a(3);a.set(5);a.get();a.set(5); a是常對(duì)象 . 不能被更新或 const test a(3);去掉 const 使 a 不再為常對(duì)象43.#includeclass pointprivate:float x.y;public: f1(float a.float b)x=a;y=b; point()x=0; y=0; void ge
12、tx()coutxendl; void gety()coutyendl; ;void print(point a)couta.xendl; main()point a;print(a);print(point a)couta.xendl; print( )不是成員函數(shù)不允許直接調(diào)用a.x 或?qū)rivate:float x,y;改為 public:float x,y;或 coura.xendl;改為 a.getx( );44.#includeclass fprivate: int x.y;public: fl(int b)x=a; y=b; void print()coutxyen
13、dl; ;main()f ;a.print();a.f1(1.5,1.8); f1( )調(diào)用時(shí)實(shí)參與形參類型不一致45.#includemain()int x=6;const int*p=x;cout*pendl;const int *p=x;變量給指針p 賦值必須加上&四、完成程序題( 本大題共5 小題 . 每小題 4 分 . 共 20 分)46. 完成下面程序 . 使其輸出 l0. 并在退出運(yùn)行時(shí)正確釋放分配給指針的存儲(chǔ)空間。#include using namespace std;void main()int *a.*p;a=new int(10);p= _a_;cout*pendl;d
14、elete p;或 delete a;47.#include using namespace std;class baseprivate:int x;public: base(int a)x=a;int get()return x; void showbase() coutx=xendl; ;class Derived: public baseprivate: int y;public: Derived(int b): base(a)y=b; void showderived()coutx=get().y=yshowbase() ;d.showderived();b.showbas
15、e();輸出結(jié)果如下:x=3x=6.y=7x=6x=6x=6x=6.y=7x=648. 下面程序的運(yùn)行結(jié)果如下:B :display()C :display()在下劃線處填上缺少的部分。源程序如下:#includeusing namespace std;class Bpublic:virtual voiddisplay( ) cout B:display( ) endl; ;class C:public Bpublic:voiddisplay()coutC: display()display();void main()B b.*pb;C c;pb= b;fun(pb);pb= c;fun(pb
16、);49. 下面程序的運(yùn)行結(jié)果如下:This is line1This is line2This is line3在下劃線處填上缺少的部分。源程序如下:#include#includefstream或” fstream ”using namespace std;void main()fstream fin, fout;fout.open(my.txt.ios:out) ;if(!fout.is_open()return;for(int i=0; i3 ;i=i+1)foutThis is linei+1endl;fout.close();fin.open(my.txt.ios: in);if(
17、! fin.is_open()return;char str100 ; while( !fin.eof( ) )fin.getline(str.100);coutstrendl;fin.close();50. 在下劃線處填上缺少的部分。源程序如下:#include using namespace std;template或 templateT fun(T x)Ty ;y=x*x-T(5);return y;void main()float a=2;coutfun(a);五、程序分析題( 本大題共4 小題 . 每小題 5 分 . 共 20 分)51. 請(qǐng)寫出 myTextl.txt文本文件中的容
18、#include#include using namespace std;#includevoid main()ofstream myFile1;myFilel.open(myTextl.txt) ;coutEnter the data in Chinese format(e.g. .2008.May 25):endl ;string Date(2008.January 1);string Year=Date.substr(0.4);int k=Date.find(.);int i=Date.find( );string Month=Date.substr(k+l.i-k-1);string
19、Day=Date.substr(i+1.2);string NewDate=Day+ +Month+ +Year;myFileloriginal date: Dateendl ;myFile1Converted date: NewDateendl ;myFilel.close();original date:2008,January 1Converted date:1 January 200852. 給出下面程序的輸出結(jié)果#includeusing namespace std;class Simpleint x.y;public :Simple()x=y=0; Simple(int j)x=i; y=j ; void copy(Simple s) ;void setxy(int j)x=i;y=j ; void print()coutx=x.y=y=10)if(-i 4=3)continue;elsecouti=i-endl;i=16i=14i=12i=1054. 給出下面程序的輸出結(jié)果#includeusi
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/TS 6201:2025 EN Health informatics - Personalized digital health framework
- 2025版新型實(shí)木地板安裝與維護(hù)一體化合同
- 2025年在線教育平臺(tái)課程銷售傭金及教學(xué)資源合作合同
- 2025年度綜合性幼兒園運(yùn)營(yíng)管理承包合同
- 2025年激光測(cè)距儀、測(cè)向儀合作協(xié)議書
- 2025年鋼鐵廠鋼筋施工勞務(wù)承包合同:成本控制
- 業(yè)務(wù)部門財(cái)務(wù)支持計(jì)劃
- 幼兒園小班的校園文化建設(shè)工作計(jì)劃
- 玩中學(xué)學(xué)中玩計(jì)劃
- 細(xì)化貨物標(biāo)識(shí)與管理的措施計(jì)劃
- 表冷器更換施工方案
- 瀝青集料篩分反算計(jì)算表格(自動(dòng)計(jì)算)
- 2023年國(guó)家護(hù)理質(zhì)量數(shù)據(jù)平臺(tái)
- 惡性高熱課件
- 真空滅弧室基本知識(shí)課件
- 川教版四年級(jí)(上、下冊(cè))生命生態(tài)與安全教案及教學(xué)計(jì)劃附安全知識(shí)
- 工齡認(rèn)定文件
- 教師招聘考試歷年真題(物理)及答案
- 給藥護(hù)理 口服給藥法
- 初中歷史人教版八年級(jí)上經(jīng)濟(jì)和社會(huì)生活中國(guó)近代民族工業(yè)的發(fā)展
- YS/T 562-2009貴金屬合金化學(xué)分析方法鉑釕合金中釕量的測(cè)定硫脲分光光度法
評(píng)論
0/150
提交評(píng)論