




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上精選優質文檔-傾情為你奉上專心-專注-專業專心-專注-專業精選優質文檔-傾情為你奉上專心-專注-專業C+語言程序設計 期中考試試題考試時間:2012年4月17日姓名: 學號: 班級:一、選擇題(每小題1分,共40分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的。 關于友元,下列說法錯誤的是( )A)如果類A是類B的友元,那么類B也是類A的友元B)如果函數fun()被說明為類A的友元,那么在fun()中可以訪問類A的私有成員C)友元函數可以減少系統開銷,提高效率。D)如果類A是類B的友元,那么類A的所有成員函數都是類B的友元A下面選項中不屬于面向對象程
2、序設計特征的是( )。A)繼承性B)多態性C)類比性D)封裝性C已知下列語句中的x和y都是int型變量,其中錯誤的語句( )A ) x=y+; B ) x=+y; C ) x+=y; D ) +x=y;C為了提高函數調用的實際運行速度,可以將較簡單的函數定義為()。 A)內聯函數 B)重載函數 C)遞歸函數 D)函數模板A下列關于C+函數的敘述中,正確的是( )。A)每個函數至少要具有一個參數 B)每個函數都必須返回一個值C)函數在被調用之前必須先聲明 D)函數不能自己調用自己C有以下程序#includeint i = 0;void fun() static int i = 1; std:co
3、uti+,;std:couti,;int main() fun(); fun(); return 0;程序執行后的輸出結果是( )1,2,1,2, B) 1,2,2,3, C) 2,0,3,0, D) 1,0,2,0,D下列字符串中,可以用作C+標識符的是A)y_2012 B)int C)3d D)foo-1Acout 2-5 endl;的輸出結果為( )A)7B)-5C)0.03125D)-7D下列關于類和對象的敘述中,錯誤的是( )。A)一個類只能有一個對象 B)對象是類的具體實例 C)類是對某一類對象的抽象 D)類和對象的關系是一種數據類型與變量的關系A10設int a=3,b=2;,則
4、+a*b+的結果是( )。A)6 B)8 C)9 D)12B11在32位計算機中,一個int型數據所占用的內存長度為( )字節。A)2B)4C)6D)8B12下列十六進制整型常量的寫法中,錯誤的是( )。A)0 xafB)0C)0X1bD)0 xAEB13. 下列變量定義中,正確的是( )A)int m,n,x,y; float x,z;B)char c1,c2=”c”; C)double age,do;D)float f1,_time=0; double score_;D14. 若有下面的函數調用:fun(a+b+c+d,3,min(a,b),n)則fun函數的實參個數是( )。A3B4C5
5、D6B15. 有如下函數定義:void func(int a, int& b) a+;b+;若執行代碼段: int x=2,y=2;func(y,x);則變量x和y的值分別是( )。A2和2B3和3C3和2D2和3C16. 在語句cout n;switch(n) case 1: cout 1; case 2: cout 2; case 3: case 4: cout 3; break;default: cout 4;時,若鍵盤輸入1,則屏幕顯示A)1 B)14 C)12 D)123D19. 有如下程序:int x = 4;dox-=3;cout x;while(!(-x);執行這個程序的輸出結
6、果是( )。 A1B41C1-2D死循環C20. 已知枚舉類型定義語句為: enum Token NUMBER ,NAME, PLUS = 5, MINUS, PRINT = 10 ;則下列敘述中錯誤的是( )A)枚舉常量NAME的值為1B)枚舉常量NUMBER的值為1C)枚舉常量MINUS的值為6D)枚舉常量PRINT的值為10B21. 執行語句序列:int i=0; while(i 25) i+=3; couti; ,輸出結果是( )。A)24 B)25 C)27 D)28C22. 有如下程序:#includeusing namespace std;void fun (int x)cout
7、 x endl;int main()cout fun (23);return 0;如上程序的輸出為( )A)23B)2323C)編譯錯誤D)運行錯誤C23. 有如下程序:#include using namespace std;void swap(int& x, int y) int t = x; x = y; y = t;int main( )int a=23,b=42;swap(b, a);cout a , b endl;return 0;執行后的輸出結果是( )。A)42, 42 B)23, 23 C)23, 42 D)42, 23B24. 已知程序中已經定義了函數test,其原型是in
8、t test(int, int, int);,則下列重載形式中正確的是A ) char test(int,int,int);B ) double test(int,int,double);C ) int test(int,int,int=0);D ) float test(int,int,float=3.5F);B25. 有如下程序段:int i=1;while (1) i+; if(i = 10) break; if(i%2 = 0) cout *;執行這個程序段輸出字符*的個數是A)10B)3C)4D)5C26. 計算斐波那契數列第n項的函數定義如下:int fib(int n) if (
9、n = 0) return 1; else if (n = 1) return 2; else return fib(n-1)+fib(n-2);若執行函數調用表達式fib(2),函數fib被調用的次數是A)1B)2C)3D)4C27. 有如下程序:#includeusing namespace std;int main()void function(double val);double val;function(val);coutval;return 0;void function(double val)val = 3;編譯運行這個程序將出現的情況是A)編譯出錯,無法運行 B)輸出:3C)輸
10、出:3.0 D)輸出一個不確定的數D28. 有如下類聲明:class Foo int bar(); ;則Foo類的成員bar是( )。A)公有數據成員 B)公有成員函數 C)私有數據成員 D)私有成員函數D29. 若有語句 “int i=1,j=2; coutj/I+i/j;”, 則輸出結果是( )A)0B)2.5C)0.5D)2D30. 在類聲明中,緊跟在“public:”后聲明的成員的訪問權限是( )。A)私有B)公有C)保護D)默認B31. 關于函數重載,下列敘述中錯誤的是 A 重載函數的函數名必須相同 B 重載函數必須在函數形參個數或類型上有所不同 C 重載函數的返回值類型必須相同 D
11、 重載函數的函數體可以有所不同C32. 以下關鍵字不能用來聲明類的訪問權限的是_。A)public B)static C)protected D)privateB33. 在下列函數原型中,可以作為類AA構造函數的是( )。A)void AA(int); B)int AA( ); C)AA(int)const; D)AA(int);D34. 有如下程序:#include using namespace std;class AAint n;public:AA(int k):n(k) int get( ) return n;int get( )const return n+1;int main( )
12、AA a(5);const AA b(6);couta.get( )b.get( );return 0;執行后的輸出結果是( )。A)55 B)57 C)75 D)77B35. 有如下類定義:class AAint a;public:int getRef()const return &a; /int getValue()const return a; /void set(int n)const a=n; /friend void show(AA aa)const couta; /;其中的四個函數定義中錯誤的是( )A) B)C) D)D36. 有如下程序:#include using name
13、space std;class MyClasspublic:MyClass() cout *; MyClass(MyClass& a) cout #; MyClass() cout ; ;int main()MyClass a;MyClass b(a);return 0;運行時的輸出結果是( )。A)*#B)#*C)*#D)#*C37. 有如下程序:#includeusing namespace std;class testprivate:int a;public:test()coutconstructorendl;test(int a)coutaendl;test(const test& t
14、est)a= test.a;cout”copy constructorendl;test()coutdestructorendl;;int main( )test A(3);return 0;運行時輸出的結果是A) 3 B) constructor destructorC) copy constructor destructor D) 3 destructorD38對于一個類定義,下列敘述中錯誤的是( ) A) 如果沒有定義拷貝構造函數,編譯器將生成一個拷貝構造函數 B) 如果沒有定義缺省的構造函數,編譯器將一定生成一個缺省的構造函數 C) 如果沒有定義構造函數,編譯器將生成一個缺省的構造函數
15、和一個拷貝構造函數D) 如果已經定義了構造函數和拷貝構造函數,編譯器不會生成任何構造函數B39. 有如下類定義:class Foopublic:Foo(int v) : value(v) / Foo() / private:Foo() / int value = 0; / ;其中存在語法錯誤的行是A) B)C) D)D40. 有以下程序#includeusing namespace std;class MyClasspublic:MyClass(int n)number = n;MyClass(MyClass &other) number=other.number; MyClass()priv
16、ate: int number;MyClass fun(MyClass p)MyClass temp(p);return temp;int main()MyClass obj1(10), obj2(0);MyClass obj3(obj1);obj2=fun(obj3);return 0;程序執行時,MyClass類的拷貝構造函數被調用的次數是A)5 B)4 C)3 D)2B二、填空題(共60分)下面1-8每題1分,9-20每題2分,21-26每題3分,27-28每題5分。1. C+是面向 的程序設計語言。對象2. 在C+語言中,032表示一個_八_進制數,而0 x23表示一個_十六_進制數。
17、高級語言屏蔽了機器的細節,提高了語言的_。抽象層次4. C+中只有兩個邏輯常量:true和 _。false5. 已知一個函數的原型是:int fn(double a);若要以5.27為實參調用該函數,應使用表達式 _。fn(5.27)6. 非成員函數應聲明為類的_函數才能訪問這個類的private成員。友元7. 若有定義語句”int x=20,y=20 z=10;”,則表達式xz&y=z的布爾值為_。false8. 在類的對象被創建的時候,_函數會被系統自動調用。構造-7的二進制補碼表示(8位)為 _ _ _ _ _ _ _ _。執行語句序列:int a=1,b=1;b=(a=3*4,a=a*
18、5);coutbendl;輸出結果為_。60若有定義語句:int a=3,b=2,c=1;,則表達式ab?a:b的值是 。2執行語句序列:int x=10,&r=x; r+;coutx-rendl; 輸出結果為_。11-11下列函數的功能是判斷字符串str是否對稱,對稱則返回true,否則返回false。請在橫線處填上適當內容,實現該函數。bool fun(char *str)int i=0, j=0;while (strj) _ ;j+for(j-; i=14下面程序運行的結果是 。*#*#*#*#$#include using namespace std;void main() int i
19、; for (i=1;i=6;i+) if(i%3) cout *; else continue; cout #; cout $endl;15. 已知遞歸函數f的定義如下:int f (int n)if(n2) return 1; else return n*f(n-2);則函數調用語句f(6)的結果是 。2416. 執行下列語句后,變量sum的值是_.7int sum =1;for (int i=1;i=i;j-) sum+;17. 下列程序的輸出結果為Object id=1Object id=2請將程序補充完整。#include using namespace std;class Poin
20、t public: Point(int xx=0, int yy=0) X=xx; Y=yy; countP+; Point( ) countP-; static void GetC( ) cout Object id=endl; private: int X,Y;static int countP; ;_ /靜態數據成員的初始化int Point:countP=1;int main( ) Point:GetC( );Point A(4,5); A.GetC( ); return 0;18. 如下類定義中包含了構造函數和拷貝構造函數的原型聲明,請在橫線處填寫正確的內容。class myClas
21、s int data;public: myClass(int value);/構造函數 myClass(const _ anotherObject);/拷貝構造函數myClass&19. 若下面程序運行時輸出結果為1,A,10.12,B,3.5請將程序補充完整。#include using namespace std;int main()void test(int, char, double _ );c=3.5test(1, A, 10.1 );test(2, B);return 0;void test(int a, char b, double c)couta,b,cendl;20. 有如下
22、類聲明:Class MyClassint i;private:int j;public:int m,n;其中,私有成員的數量為_。221寫出執行完下列代碼段之后指定變量的值:bool x =false,y=true,z=false;x=x&y|z;falsey=x|y&z;falsez= !(x!=y) | (y=z);true則x= ; y= ; z= ;22. 字面常量42, 4.2, 42L的數據類型分別是_、_、_。int double long23. 下面程序的運行結果為_。43#include class Aint num;public:A(int i)(num=+i;A(A &a
23、)num=a.num+;void print()(coutnum;void main()A a(2),b(a);a.print();b.print();24. 下面程序段的運行結果為 :a=-5int i=0,a=0,s=1;do a=a+s*i; s=-s; i+;while(i10);cout a=aendl;25. 已知函數f的定義如下:int f (int n)coutn;return +n;則函數調用語句f(f(2)的結果是 。2326. 有4個由用戶任意輸入的整數a、b、c和d,要求按照從大到小的順序輸出,請補充以下程序使其滿足要求。 #include using namespac
24、e std;void main() int a, b, c, d, t; cin abcd; if (ab) t =a; a=b; b=t; if (ac) t =a; a=c; c=t; if (ad) t =a; a=d; d=t; if (_) t =b; b=c; c=t; bc if (bd) t =b; b=d; d=t; if (cd) t =c; c=d; d=t; cout a,b,c,dendl;27. 實現兩個重載函數,使得下面程序的結果為:34#include using namespace std;_int main()int a=2,b=3,c=4;double x=5.5,y=2.1,z=4; coutmiddle(a,b,c)endl;coutmiddle(x,y,z)en
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政員工薪酬福利發放細則?
- 《高等數學》上冊課件復習題四
- 《連鎖門店店長管理實務》課件項目5門店團隊管理
- 2025年公共政策評論與分析考試試卷及解答
- 肢體壞死疑難病例討論
- 2025年工程管理碩士入學考試試卷及答案
- 2025年環保工程師考試試題及答案
- 嬰兒肺炎翻轉課堂教學設計
- 語文骨干教師培訓心得體會
- 2025年海南省儋州三中學八下英語期末綜合測試試題含答案
- 天一大聯盟2024屆高一數學第二學期期末統考試題含解析
- (高清版)JTG 3370.1-2018 公路隧道設計規范 第一冊 土建工程
- 【語文】西安外國語大學附屬小學(雁塔區)小學五年級下冊期末試卷(含答案)
- 新編旅游職業道德 課件 譚為躍 第3-5章 旅行社從業人員道德素養、酒店從業者道德素養、景區點從業人員道德素養
- 小學數學“組題”設計分析 論文
- 附件16:地下室燈帶臨時照明系統方案
- 中央空調維護保養服務投標方案(技術標)
- 服務認證培訓課件
- 風電場反事故措施
- 細胞生物學與疾病預防與治療
- 《銀行業風險管理》課件
評論
0/150
提交評論