版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、全國2009年1月高等教育自學(xué)考試C+程序設(shè)計(jì)試題課程代碼:04737一、單項(xiàng)選擇題(本大題共20小題,每小題1分,共20分)在每小題列出的四個備選項(xiàng)中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內(nèi)。錯選、多選或未選均無分。1.C+源程序文件擴(kuò)展名為( )A.cpp B.h C.1ib D.obj2.在C+中使用流進(jìn)行輸入輸出,其中專用于從鍵盤進(jìn)行輸入的流是( )A.cerr B.cin C.coutD.cfile3.包含自定義頭文件file.h的預(yù)處理指令是( )A.#define<file.h> B.#include file.hC.#define file.h D.#
2、include"file.h"4.用于標(biāo)識十六進(jìn)制前綴或后綴是( )A.元 B.后綴L或e C.前綴零 D.前綴0x5.設(shè)存在整型變量int x,則下列句與其它三項(xiàng)含義不同的是( )A.int* p=&x; B.int& p=x; C.int & p=x;D.int &p=x;6.在定義類成員時,為產(chǎn)生封裝性,則需使用哪個關(guān)鍵字( )A.public B.publish C.protected D.private7.設(shè)函數(shù)void swap(int&,int&)將交換兩形參的值,如兩整型變量int a=10;int b=15;
3、則執(zhí)行swap(a,b)后,a、b值分別為( )A.10,10 B.10,15 C.15,10 D.15,158.函數(shù)默認(rèn)參數(shù)在函數(shù)原型中說明,默認(rèn)參數(shù)必須放在參數(shù)序列的( )A.前部 B.中部 C.后部 D.兩端9.設(shè)存在函數(shù)int min(int,int)返回兩參數(shù)中較小值,若求15,26,47三者中最小值,下列表達(dá)式中錯誤的是( )A.int m=min(min(15,26),min(15,47);B.int m=min(15,26,47);C.int m=min(15,min(47,26); D.int m =min(min(47,26),16);10.下列函數(shù)不能和函數(shù)void pr
4、int(char)構(gòu)成重載的是( )A.int print(int); B.void print(char,char);C.int print(char); D.void print(int,int);11.在下列成對的表達(dá)式中,運(yùn)算結(jié)果類型相同的一對是( )A.72和7.02.0 B.72.0和72C.7.02和72 D.7.02.0和7.02 l2.內(nèi)聯(lián)函數(shù)的特點(diǎn)是( )A.減少代碼量,加快訪問速度 B.減少代碼量,減緩訪問速度C.增加代碼量,減緩訪問速度 D.增加代碼量,加快訪問速度13.類的私有成員可在何處被訪問( )A.本類的成員函數(shù)中 B.本類及子類的成員函數(shù)中C.通過對象名在任何
5、位置 D.不可訪問14.類的構(gòu)造函數(shù)在以下什么情況下會被自動調(diào)用( )A.定義成員函數(shù)時 B.定義對象時C.定義數(shù)據(jù)成員時 D.定義友元函數(shù)時15.下列關(guān)于析構(gòu)函數(shù)描述正確的是( )A.可以重載 B.函數(shù)體中必須有delete語句C.返回類型必須是void類型 D.不能指定返回類型 16.設(shè)有函數(shù)T Sum(T x,T y)return x+y;,其中T為模板類型,則下列語句中對該函數(shù)錯誤的使用是( )A.Sum(1,2); B.Sum(3.0,2.2);C.Sum(A,C); D.Sum("A","C");17.下列哪個編譯指令屬于條件編譯指令( )A
6、.#include B.#define C.#else D.#pragma18.關(guān)于類的靜態(tài)成員函數(shù)描述錯誤的是( ) A.在創(chuàng)建對象前不存在 B.不能說明為虛函數(shù)C.不能直接訪問非靜態(tài)函數(shù) D.不是對象的成員l9.如果類A被聲明成類B的友元,則( ) A.類A的成員即類B的成員B.類B的成員即類A的成員C.類A的成員函數(shù)不得訪問類B的成員D.類B不一定是類A的友元20.派生類的對象可以訪問以下那種情況繼承的基類成員( ) A.私有繼承的私有成員 B.公有繼承的私有成員C.私有繼承的保護(hù)成員 D.公有繼承的公有成員二、填空題(本大題共20小題,每小題1分,共20分)請?jiān)诿啃☆}的空格中填上正確答
7、案。錯填、不填均無分。21.若使用標(biāo)準(zhǔn)輸出流把整型變量a的值輸出到屏幕上,實(shí)現(xiàn)此操作的C+語句是_。22.C+將數(shù)據(jù)從一個對象流向另一個對象的流動抽象為“流”,從流中獲取數(shù)據(jù)的操作稱為_。23.執(zhí)行下列代碼 int b=100; cout<<"Hex:"<<hex<<b; 程序的輸出結(jié)果是_。24.靜態(tài)聯(lián)編所支持的多態(tài)性稱為_的多態(tài)性。25.C+程序必須有且只有一個主函數(shù),其函數(shù)名為_。26.寫出聲明一個復(fù)數(shù)對象的語句,并使該對象被初始化為2.2+1.3i,此聲明語句是_。27.若有函數(shù)定義為: int add(int ml=0,int
8、m2=2,int m3=4) return ml+m2+m3; 在主函數(shù)中有int s=add(1)+add(0,1)+add(0,1,2); 則執(zhí)行此語句后s的值為_。28.C+中使用_關(guān)鍵字說明函數(shù)為內(nèi)聯(lián)函數(shù)。29.在源程序中有宏定義:#define PI 3.14,則若不想使該宏定義影響到程序的其它地方,可以使用_刪除該宏定義。30.類和其它數(shù)據(jù)類型不同的是,組成這種類型的不僅可以有數(shù)據(jù),還可以有對數(shù)據(jù)進(jìn)行操作的_。31.有下列代碼int a=0;double b=0;cin>>a>>b;當(dāng)用鍵盤輸入1.25時,b=_。32.對于類Point而言,其析構(gòu)函數(shù)的定義
9、原型為_。33.對象成員構(gòu)造函數(shù)的調(diào)用順序取決于這些對象在類中說明的順序,與它們在成員初始化列表中給出的順序_。34.類的簡單成員函數(shù)是指聲明中不含_、volatile、static關(guān)鍵字的函數(shù)。35.與操作對象的數(shù)據(jù)類型相互獨(dú)立的算法稱為_。36.從一個或多個以前定義的類產(chǎn)生新類的過程稱為_。37.在vector類中向向量尾部插入一個對象的方法是_。38.C+中用于動態(tài)創(chuàng)建對象,并返回該對象的指針的關(guān)鍵字是_。39.C+的流類庫預(yù)定義的與標(biāo)準(zhǔn)輸出設(shè)備相聯(lián)接的流是_。40.執(zhí)行下列代碼 cout<<noshowpoint<<123.0; 程序輸出結(jié)果是_。三、改錯題(本
10、大題共5小題,每小題2分,共10分)下面的類定義中有一處錯誤,請用下橫線標(biāo)出錯誤所在行并給出修改意見。41.#include<iostream.h> class f private:float x,y; public:f(float a,float b)x=a;y=b; float max()return(x<y)?x:y;求最大值 ; main( ) f a(1.5,3.8); cout<<a.max( )<<endl; 42.#include<iostream.h> class test private:int x; public:te
11、st(int a)x=a; void set(int a)x=a; void get()cout<<x<<endl; main() const test a(3);a.set(5);a.get(); 43.#include<iostream.h> class point private:float x,y; public:f1(float a,float b)x=a;y=b; point()x=0;y=0; void getx()cout<<x<<endl; void gety()cout<<y<<endl;
12、; void print(point a)cout<<a.x<<endl; main() point a;a.f1(3.0,5.0); print(a); 44.#include<iostream.h> class f private:int x,y; public:fl(int a,int b)x=a;y=b; void print()cout<<x<<y<<endl; ; main() f a; a.f1(1.5,1.8);a.print();45.#include<iostream.h> main() i
13、nt x=6; const int*p=x; cout<<*p<<endl; 四、完成程序題(本大題共5小題,每小題4分,共20分)46.完成下面程序,使其輸出l0,并在退出運(yùn)行時正確釋放分配給指針的存儲空間。#include <iostream>using namespace std;void main()int *a,*p;a=new int(10);p= _;cout<<*p<<endl;_47.#include <iostream> using namespace std; class base private:i
14、nt x; public:base(int a)x=a; int get()return x; void showbase() cout<<"x="<<x<<endl; ; class Derived:public base private:int y; public:Derived(int a,int b):base(a)y=b; void showderived() cout<<"x="<<get()<<",y="<<y<<endl;
15、; void main() base b(3); Derived d(6,7); b.showbase(); d.showderived(); _;b.showbase(); _;b1.showbase();base* pb=&bl;pb>showbase();d.showderived();b.showbase();輸出結(jié)果如下:x=3x=6,y=7x=6x=6x=6x=6,y=7x=648.下面程序的運(yùn)行結(jié)果如下: B:display() C:display() 在下劃線處填上缺少的部分。源程序如下: #include<iostream> using namesp
16、ace std; class B public: _display( ) cout << "B:display( ) "<<endl; ; class C:public B public: _display()cout<<"C:display()"<<endl; ; void fun(B*p) p>display(); void main() B b,*pb; C c; pb=b; fun(pb); pb=c; fun(pb); 49.下面程序的運(yùn)行結(jié)果如下: This is line1 This i
17、s line2 This is line3 在下劃線處填上缺少的部分。源程序如下: #include <iostream> #include_ using namespace std; void main() fstream fin, fout; fout.open("my.txt",ios:out); if(!fout.is_open() return; for(int i=0;i<3;i=i+1) fout<<"This is line"<<i+1<<endl; fout.close(); fin
18、.open("my.txt",ios:in); if(! fin.is_open() return; char str100; while(_) fin.getline(str,100); cout<<str<<endl; fin.close(); 50.在下劃線處填上缺少的部分。源程序如下: #include <iostream>using namespace std;_ T fun(T x) _y; y=x*x-T(5); return y; void main() float a=2; cout<<fun(a); 五、程
19、序分析題(本大題共4小題,每小題5分,共20分)51.請寫出myTextl.txt文本文件中的內(nèi)容#include<iostream>#include <string>using namespace std;#include<fstream>void main() ofstream myFile1;myFilel.open("myTextl.txt");cout<<"Enter the data in Chinese format(e.g. ,2008,May 25):"<<endl;strin
20、g 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 Day=Date.substr(i+1,2);string NewDate=Day+" "+Month+" "+Year;myFilel<<"original date:"<<D
21、ate<<endl;myFile1<<"Converted date:"<<NewDate<<endl;myFilel.close();52.給出下面程序的輸出結(jié)果#include<iostream> using namespace std;class Simpleint x,y;public:Simple()x=y=0;Simple(int i,int j)x=i;y=j;void copy(Simples);void setxy(int i,int j)x=i;y=j;void print()cout<&
22、lt;"x="<<x<<",y="<<y<<endl;void Simple:copy(Simples)x=s.x;y=s.y;void func(Simple s1,Simples2)s1.setxy(30,40);s2.setxy(70,80);void main()Simple obj1(1,2),obj2;obj2.copy(obj1);func(obj1,obj2);obj1.print();obj2.print();53.給出下面程序的輸出結(jié)果 #include"iostream.h&
23、quot; int main() int i=17; while(i>=10) if(-i4=3)continue; else cout<<"i="<<i-<<endl; 54.給出下面程序的輸出結(jié)果 #include<iostream> using namespace std; void main() int num=300; int &ref=num; cout<<ref; ref=ref-100; cout<<" "<<num; num=num-50;
24、 cout<<" "<<ref<<endl; 六、程序設(shè)計(jì)題(本大題共1小題,共10分)55.定義堆棧類模板Stack(先進(jìn)后出),棧的大小由使用者確定。要求該類模板對外提供 如下二種基本操作: (1)push入棧(2)pop出棧,用數(shù)組來實(shí)現(xiàn) #include<iostream> using namespace std; template<class T,int size> class Stack T xsize; int current; public: Stack()current=0; .push(.);
25、.pop(.); ; 請寫出兩個函數(shù)的過程(如果需要形式參數(shù),請給出形參類型和數(shù)量,以及返回值類型)參考答案一、 單項(xiàng)選擇題1. A 2. B 3. D 4. D 5. A 6. D 7. C 8. C 9. B 10. C11. D 12. D 13. A 14. B 15. D 16. D 17. C 18. A 19. D 20. D二、填空題21. cout<<a; 22. 提取操作23. Hex:64 24. 編譯時或編譯25. main plex<float> num(2.2,1.3)或complex<double> num(2.2,1.3)27
26、. 15 28. inline29. #undef PI 30. 函數(shù)或成員函數(shù)31. 0.25 32. Point:Point( )或Point( )33. 無關(guān) 34. const35. 泛型算法 36. 派生37. push_back(const T&) 38. new39.cout 40.123三、改錯題41.return(x<y)?x:y; 該語句求的是最小值,應(yīng)改為return(x>y)?x:y;或return(x<y)?y:x;42. a.set(5); a是常對象,不能被更新或const test a(3);去掉const使a不再為常對象43. print(point a)cout<&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年水分濕度傳感器項(xiàng)目建議書
- 2024年醫(yī)用液氧貯槽項(xiàng)目合作計(jì)劃書
- 2024年電子計(jì)算機(jī)外部設(shè)備及裝置項(xiàng)目合作計(jì)劃書
- 中藥執(zhí)業(yè)藥師中藥學(xué)專業(yè)知識(二)分類模擬題11
- 2024年模塑絕緣制品項(xiàng)目合作計(jì)劃書
- 西藥執(zhí)業(yè)藥師藥學(xué)綜合知識與技能模擬題271
- 西藥執(zhí)業(yè)藥師藥學(xué)專業(yè)知識(二)藥物化學(xué)部分分類真題(三)
- 2024年福州市永泰縣四年級數(shù)學(xué)第一學(xué)期期末質(zhì)量檢測試題含解析
- 2024年噪聲振動污染防治項(xiàng)目建議書
- 2024年工業(yè)含氧洗滌劑合作協(xié)議書
- 鐵路運(yùn)輸規(guī)程4篇
- 足球運(yùn)球技術(shù)
- HPC解決方案實(shí)施服務(wù) 交付指導(dǎo)書
- TCSAE 211-2021 智能網(wǎng)聯(lián)汽車數(shù)據(jù)共享安全要求
- (1.3)-融合新聞的發(fā)展歷史
- 2023年中煤集團(tuán)招聘筆試題庫及答案解析
- 2020年區(qū)域代理商Q4季度考核-運(yùn)營試題附答案
- 《電力電子技術(shù)》習(xí)題參考答案
- GB/T 6131.3-1996銑刀直柄第3部分:2°斜削平直柄的型式和尺寸
- 凸透鏡成像規(guī)律動畫可拖動最佳版swf
- 高二上學(xué)期化學(xué)人教版(2019)選擇性必修1實(shí)驗(yàn)計(jì)劃
評論
0/150
提交評論