C++題目含答案_第1頁
C++題目含答案_第2頁
C++題目含答案_第3頁
C++題目含答案_第4頁
C++題目含答案_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C+復習資料一、 選擇題1、若X是一個bool型變量,則X&&5<3的值(    B  )   A、為true                    B、為false   C、與X的值相同           

2、; D、與X的值相反2、設a=6,執(zhí)行語句 a+=4; 得到a的值為(    D   )      A、6      B、12      C、18      D、103、字符串”student”占用(   D    )個字節(jié)的空間。  &#

3、160; A、7       B、6       C、5      D、84、二維數(shù)組int b4=1,2,1,2,3,1,2,3,4的元素個數(shù)為(   A  )   A、12       B、3        C、4&

4、#160;      D、75、下列哪個不是用于實現(xiàn)循環(huán)結(jié)構(gòu)的語句(   B   )    A、while      B、if      C、do while     D、for6、下列表達式為真的是(  B     )   A、5<3

5、0;               B、2*3>=6   C、(7= =9&&(4>0        D、(10!=2+8|(5<37、設x=5,執(zhí)行語句if(x<0 cout< 的輸出結(jié)果為(   C   )        

6、         A、5        B、x       C、無輸出     D、08、執(zhí)行語句k=30;j=k+;后k和j的值分別為(    C   )   A、k=30,j=30   B、k=30,j=31  C、k=31,j=30 

7、 D、k=31,j=319、表達式7%3+5*9-10/2的結(jié)果為(   D   )   A、42        B、43       C、40      D、4110、執(zhí)行cout<<520< ” 520” ; 屏幕上顯示的是 (    D    &

8、#160; A、520endl”520”             B、520endl520       C、520                        D、 520  

9、  “520”                         52011、下列數(shù)據(jù)屬于字符型的是:(   C       A、123   B、true C、c   D、10.512、該for循環(huán)語句:for(i=1;i<1

10、1;i+ sum+=i; 中循環(huán)體的執(zhí)行次數(shù)為 (  C  )      A、8         B、9       C、10      D、1113、對程序段:   if(x>y   z=1;      

11、;           else     z=3;   要得到z=3的結(jié)果,滿足條件的一組數(shù)是(   D  )   A、x=1,y=2           B、x=1,y=0   C、x=2,y=1    &#

12、160;           D、x=2,y=314下面是關(guān)于構(gòu)造函數(shù)的說法,不正確的是( A )。A. C+規(guī)定,每一個類必須有一個構(gòu)造函數(shù),沒有構(gòu)造函數(shù)就不能創(chuàng)建對象B. 如果沒有提供一個類的構(gòu)造函數(shù)(一個都未提供),則C+提供一個默認的構(gòu)造函數(shù),該默認構(gòu)造函數(shù)是個無參構(gòu)造函數(shù),它僅僅負責創(chuàng)建對象C. 雖然一個類定義了一個構(gòu)造函數(shù)(不一定是無參構(gòu)造函數(shù)),C+仍然提供默認的構(gòu)造函數(shù)D. 與變量定義類似,在用默認構(gòu)造函數(shù)創(chuàng)建對象時,如果創(chuàng)建的是全局對象或靜態(tài)對象,則對象的位模式全為0,否則,對

13、象值是隨機的 15在下列說法中,不正確的是( B )。A. 靜態(tài)成員函數(shù)不能利用this指針B. 只有非靜態(tài)成員才可以使用this關(guān)鍵字,因為靜態(tài)成員沒有this指針C.析構(gòu)函數(shù)不接受任何參數(shù),也不帶有任何類型的返回值D. 虛機制在構(gòu)造函數(shù)和析構(gòu)函數(shù)中仍然可以很好地工作,以實現(xiàn)多態(tài)性16聲明類test的拷貝構(gòu)造函數(shù)的正確形式是( D )。 A. int test B. void test C. test(void D. test(test& 17一個const對象( B )。 A. 能訪問所有成員函數(shù) B. 只能訪問const成員函數(shù)C. 也能訪問volatile成員函數(shù) D

14、. 能訪問const和volatile成員函數(shù) 18下面關(guān)于類的對象性質(zhì)的描述,正確的是( D )。A. 對象之間不可以相互賦值 B. 不可以說明指向?qū)ο蟮闹羔楥. 對象不能用作數(shù)組元素 D. 一個對象能用作另一個對象的成員19、C+源程序文件的擴展名為( A )     A、.CPP    B、.C    C、.DLL   D、.EXE20、下面的函數(shù)聲明中, 哪一個是” void BC(int a, int b;”的重載函數(shù)? (  C A、

15、int  BC(int a, int b       B、 void BC(int a, char b C、float BC(int a, int b, int c = 0     D、 void BC(int a, int b=0 21 .如果a=1,b=2,c=3,d=4,則條件表達式“a>b?a:c 的值為 ( D  A. 3           

16、0; B. 2            C. 1          D. 422. 在int a3=1,3,2,4,5,6,0中,a22的值是(  C A3             B。 2       

17、0;        C。6               D。423.  已知 char c; char * const pc=asdf,(  B 是正確的。Apc=dfghB*pc=bC*pc+=yDpc=&c24. 執(zhí)行下列語句后的輸出結(jié)果是(C)。int hot=100;int &rad=hot;hot+=100;cout<    

18、   A0;                  B。100;      C200;                D。300;25. 下列對結(jié)構(gòu)及其變量定義錯誤的是:( D ) Astruc

19、t MyStruct              B。struct MyStruct           int num;                     

20、;            int num;           char ch;                          

21、;       char ch;        ;                                   

22、      my; MyStruct  my;                                C  struct       

23、;                D。 struct          int num;                      

24、0;     int num;          char ch;                            char ch;     &

25、#160;                                ;my;                  &

26、#160;                    struct  my;                           &#

27、160;          26.下列關(guān)于指針運算的描述錯誤的是:(A ) A在一定條件下,兩個指針可以相加    B在一定條件下,兩個指針可以進行關(guān)系運算    C在一定條件下,指針可以為空    D在一定條件下,兩個指針可以相互賦值27.在C+語言中,對函數(shù)參數(shù)默認值描述正確的是:(  D)    A函數(shù)參數(shù)的默認值只能設定一個   

28、 B一個函數(shù)的參數(shù)若有多個,則參數(shù)默認值的設定可以不連續(xù)    C函數(shù)參數(shù)必須設定默認值    D在設定了參數(shù)的默認值后,該參數(shù)后面定義的所有參數(shù)都必須設定默認值28. 不能作為函數(shù)重載判斷依據(jù)的是:( D )    A參數(shù)個數(shù)   B。參數(shù)類型   C。函數(shù)名字   D。返回類型29. 以下程序的輸出結(jié)果是:( B )      #include   &#

29、160;   void prt(int *x,int *y,int *z         cout<<+*x<<","<<+*y<<","<<*z+<             int a=10,c=20,b=40;     void main( 

30、;      prt(&a,&b,&c;  prt(&a,&b,&c;         A 11,42,31      B。11,41,20      C。11,21,40      D。11,41,21     

31、0;    12,21,41        12,42,20         11,21,41          12,42,2230.以下程序的輸出結(jié)果是:( D )      #include       void func(

32、char *m        +m;        cout<<*m<              void main(        static char *a="morning", "afternoon", "

33、;evening"        char *p;        p=a;        func(p;             A字符o的起始地址          &

34、#160;   B。字符a的起始地址        C字符o                        D。afernoon 31.以下程序的輸出結(jié)果是:(  D )       #include

35、        int  fun(char *s       char *p=s;       while (*p!='0'  p+;       return (p-s;            void main(

36、0;       cout<           A0          B。1          C。2         D。332. 不正確的標識符是(B) A. _a2 

37、0; B. 2ai C. a2_i   D. INt 33. 在 ( C 情況下適宜采用 inline 定義內(nèi)聯(lián)函數(shù)。 A. 函數(shù)體含有循環(huán)語句  B. 函數(shù)體含有遞歸語句 C. 函數(shù)代碼少、頻繁調(diào)用 D. 函數(shù)代碼多、不常調(diào)用 34. 通過 ( A 調(diào)用虛函數(shù)時,采用動態(tài)綁定(binding。 A. 對象指針  B. 對象名 C. 成員名限定   D. 派生類名 35. 假定一個類的構(gòu)造函數(shù)為 A(int aa,int bba=aa+;b=a*bb+; ,則執(zhí)行  Ax(4,5; 語句后, x.a 和 x.b 的

38、值分別為 ( C 。 A. 4 和 5  B. 5 和 4 C. 4 和 20   D. 20 和 5 36. 在 C+ 中有以下 4 條語句: static int hot=200;int &rad=hot; hot=hot+100;cout< 執(zhí)行這 4 條語句后輸出為: ( C 。 A. 0    B. 100 C. 300   D. 200 37 對 do-whie 語言 錯誤 的說法是( C ) A. 可構(gòu)成多重循環(huán)結(jié)構(gòu)   B. 循環(huán)次數(shù)不可能為 0 C. 循環(huán)次數(shù)可能為 0  

39、D. 先執(zhí)行后判斷 38. 靜態(tài)成員函數(shù) 沒有 (B A. 返回值    B.this 指針 C. 指針參數(shù)   D. 返回類型 39. 在類中說明的成員可以使用關(guān)鍵字 (  A  進行修飾。   A. public           B. extern  C. cpu       D.  register 40. 下列不是描述類的成員函數(shù)的是 ( C A. 構(gòu)造函

40、數(shù) B. 析構(gòu)函數(shù) C. 友元函數(shù) D. 拷貝構(gòu)造函數(shù) 41. 若 int a3= 1 , 2 , 3 , *p ;則下列賦值語句中 正確的是(D) A. p=&a ;    B. *p=a ; C. *(a+1=a ;          D. p=a+1 42. 若 p1 、 p2 都是指向整型的指針, p1 已經(jīng)指向數(shù)量 x , 要使 p2 也指向 x ,正確的是(A) A. p2=p1 ;   B.&#

41、160;p2=*p1 ; C. p2=&p1 ;   D. p2=*p1 ; 43. 在類中說明的成員可以使用關(guān)鍵字 (A 進行修飾。 A. private     B. extern C. auto     D. register44. 在 int a=3,*p=&a; 中, *p 的值是 ( D 。 A. 變量 a 的地址值   B. 無意義 C. 變量 p 的地址值   D. 3 45. 假定 AB 為一個類,則執(zhí)行 AB x ;語句時將自動調(diào)用該類的

42、(B 。 A. 有參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值構(gòu)造函數(shù) 46. 如果 class 類中的所有成員在定義時都沒有使用關(guān)鍵字 pubilc, private,protected ,則所有成員缺省定義為: ( C 。 A. public   B. protected C. private   D. static 47 語句 int (*p( ; 的含義是( A) A.p 是一個指向函數(shù)的指針變量,該函數(shù)的返回值是一個整型數(shù)據(jù) B.p 是指針變量,指向一個整型數(shù)據(jù) C.p 是一個指向一維數(shù)據(jù)的指針變量 D.p 是指針函數(shù)48.

43、在 C+ 中實現(xiàn)封裝是借助于 (B A. 枚舉  B. 類 C. 數(shù)組   D. 函數(shù) 49.設int a=3,b=4,c=5;表達式(a+b>c&&b=c的值是(  C  。  A. 2          B. -1  C. 0          D. 1  50. 設int x = 1,2,3,4,5,6,* p

44、 = x;則值為3的表達式是  (B) A. p + = 2, * + + p B. p + = 2, * p + + C. p + = 3, * p D. p + = 2, + + * p51. 關(guān)于類概念的描述中,( D )是錯誤的。A類是抽象數(shù)據(jù)類型的實現(xiàn); B類是具有共同行為的若干對象的統(tǒng)一描述體;C類是創(chuàng)建對象的樣板; D類不是C中的一種數(shù)據(jù)類型;52. 在32位機中,double型字寬為( D )字節(jié)。A2; B4;C 6; D853. 在int a3=1,0,3,2,4,5,6,0;中a22的值是(C)。A0; B5; C6; D254. 對于double (*p10;

45、的描述,( A )是正確的。A. p是一個指向數(shù)組的指針,所指向的數(shù)組是10個double型元素;B. p是一個指向某個數(shù)組中第10個元素的指針,該元素是double型變量;C. p5表示某個數(shù)組的第10個元素的值;D. p是一個具有10個元素的指針數(shù)組,每個元素是一個double型指針;55. 下述關(guān)于開關(guān)語句的描述中,( A )是正確的。A. 開關(guān)語句中default子句可以沒有,也可以有一個;B. 開關(guān)語句中每個語句序列中必須有break語句;C. 開關(guān)語句中default子句只能放在最后;D. 開關(guān)語句中case子句后面的表達式可以是整形表達式。56. 下列( D)是引用調(diào)用;A形參是

46、指針,實參是地址值; B形參和實參都是變量;C形參是數(shù)組名,實參是數(shù)組名; D形參是引用,實參是變量。57. ( A )是析構(gòu)函數(shù)的特征。A. 一個類中只能定義一個析構(gòu)函數(shù); B. 析構(gòu)函數(shù)與類名不同;C. 析構(gòu)函數(shù)的定義只能在類體內(nèi); D. 析構(gòu)函數(shù)可以有各個或多個參數(shù)。;58. 關(guān)于new運算符的下列描述中,( D 是錯的。A. 它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組;B. 使用它創(chuàng)建的對象或?qū)ο髷?shù)組可以使用運算符delete刪除;C. 使用它創(chuàng)建對象時要調(diào)用構(gòu)造函數(shù);D. 使用它創(chuàng)建對象數(shù)組時必須指定初始值。 59. 已知fun(int是類Test的公有成員函數(shù),p是指向成員函數(shù)fun(的指針

47、,采用( D )是正確的:Ap=fun; Bp=Test:fun(; Cp=fun(; Dp=Test:fun;60. 關(guān)于對象概念的描述中,(A )是錯誤的。A. 對象就是C語言中的結(jié)構(gòu)變量; B. 對象代表著正在創(chuàng)建的系統(tǒng)中的一個實體; C. 對象是一個狀態(tài)和操作(或方法)的封裝體; D. 對象之間的信息傳遞是通過消息進行的;61. 下列給字符數(shù)組進行初始化中,( A )是正確的。A. char s1 ="12345abcd" B. char s23="xyz" C. char s33= 'a', 'x', '

48、y' D. char s423="xyz","mnp"62. 對于int *pa5;的描述,( D )是正確的。A. pa是一個指向數(shù)組的指針,所指向的數(shù)組是5個int型元素;B. pa是一個指向某個數(shù)組中第5個元素的指針,該元素是int型變量;C. pa5表示某個數(shù)組的第5個元素的值;D. pa是一個具有5個元素的指針數(shù)組,每個元素是一個int型指針;63. 下述靜態(tài)數(shù)據(jù)成員的特征中,( D )是錯誤的。A. 說明靜態(tài)數(shù)據(jù)成員時前邊要加修飾符static;B. 靜態(tài)數(shù)據(jù)成員要在類體外進行初始化;C. 引用靜態(tài)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員名前加&

49、lt;類名>和作用域運算符;D. 靜態(tài)數(shù)據(jù)成員不是所有對象所共用的。64、下列的各類函數(shù)中,( C )不是類的成員函數(shù)。A. 構(gòu)造函數(shù); B. 析構(gòu)函數(shù); C . 友元函數(shù); D. 拷貝構(gòu)造函數(shù);二、 填空題1、一個基本語句的最后一個字符是(    ;  .2、與int x=100;  while(x>0   cout<<P;x-;     等效的for語句是(     for(x=100;x>0;x-&#

50、160;    )。3、執(zhí)行for(int i=1;i<30;i+ cout<<”*”;將輸出(  29    )個*號。4、數(shù)學函數(shù)sqrt(49的結(jié)果為(7),pow(3,3的結(jié)果為:(27)。5、C+程序主要有三種基本控制結(jié)構(gòu),分別是順序結(jié)構(gòu)、條件分支結(jié)構(gòu)和(   循環(huán)結(jié)構(gòu)    )。 6在c+中,除具有 循環(huán) 、 switch 語句的函數(shù)不能說明為內(nèi)聯(lián)函數(shù)外,其它函數(shù)都可以說明為內(nèi)聯(lián)函數(shù)。7在c+中,封裝可以由 publ

51、ic 、private 和 protect 等關(guān)鍵字提供。8若example是已定義的類,在程序結(jié)束之前,共計存在 2 個對象。#include”example”main(example X(0;X=5;X.print(;X=example(10;X.print(;9在c+中,如果在多條繼承路徑有一個公共的基類,如果想使這個公共的基類只產(chǎn)生一個拷貝,則可以將這個基類說明為 虛基類 。使用關(guān)鍵字 virtual 說明。10靜態(tài)成員為該類的所有 對象 共享,它們被存儲于一個 中。 15 在C語言中,編程的單位是_函數(shù)_;在C+語言中,編程的單位是_對象_。 16 類是對具有共同屬性和行為的一類事物

52、的抽象描述,共同屬性被描述為類中的 _數(shù)據(jù)成員_,共同行為被描述為類中的_函數(shù)成員_。 17 類的具體表現(xiàn)是通過定義_成員函數(shù)_來操作的。 18 對類中的成員函數(shù)和屬性的訪問是通過_public_、_private_和_protect_這3 個關(guān)鍵字來控制的。 19 一般情況下,按照面向?qū)ο蟮囊?,把類中的?shù)據(jù)成員(屬性定義為_private_權(quán) 限,而把成員函數(shù)(方法定義為_public_權(quán)限。 20 在類定義中,數(shù)據(jù)和成員函數(shù)默認權(quán)限是_private_。 21 類中構(gòu)造函數(shù)有_一個或多_個,析構(gòu)函數(shù)有_一_個。 22 類中的構(gòu)造函數(shù)是一個特殊的成員函數(shù),它由類的對象_生成時_調(diào)用,它的作

53、用 是_初始化_。 23 在定義類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的_構(gòu)造函數(shù)_函數(shù)初始化對象自身。 24 在撤銷類的對象時,C+程序?qū)⒆詣诱{(diào)用該對象的_析構(gòu)_函數(shù)。 25 _new_運算符對指定類型對象動態(tài)分配內(nèi)存并返回_true 或false_。 26 _delete_運算符刪除(25題中的運算符所動態(tài)分配的內(nèi)存空間。 27 假定用戶沒有給一個名為MyClass的類定義構(gòu)造函數(shù),則系統(tǒng)為其定義的默認構(gòu)造 函數(shù)形式為_ MyClass(;_。 28 假定用戶沒有給一個名為MyClass的類定義析構(gòu)函數(shù),則系統(tǒng)為其定義的默認析構(gòu) 函數(shù)形式為_MyClass(;_。 29 在類中定義和實現(xiàn)的函

54、數(shù)稱為_內(nèi)聯(lián)函數(shù)_。 30 非成員函數(shù)應聲明為類的_友元函數(shù)(friend_才能訪問這個類的private成員。 31 若要把類FriendClass定義為類MyClass的友元類,則應在類MyClass的定義中加入 語句_friend FriendClass;_。 32 若要把函數(shù)void FriendFunction(定義為類MyClass的友元函數(shù),則應在類MyClass 的定義中加入語句_ friend FriendFunction(; _。 33 下面的類中定義了一個關(guān)于星期的枚舉類型,請完成下面的程序。 class MyClass public: enum Week Sun,Mon

55、,Tue,Wed,Thur,Fri,Sat ; Week week; void fun(MyClass &my _my.week_= _wed_; /將對象my的week賦值為所定義的枚舉類型 /值為3的枚舉量 34 在下面程序的橫線處填上適當?shù)恼Z句,使該程序執(zhí)行結(jié)果為10。 #include class MyClass public: _void setx(int ax=a;_或_ MyClass(int xthis.x=x;_ /為x置值 _int getx(return x;_ /取x值 private: int x; ; void main( MyClass my(10; co

56、ut << my.GetNum( << endl; 35 完成下面的類定義。 class MyClass public: MyClass( x = 0; _friend_ int GetNum(_MyClass _ my; private: int x; ; int GetNum(_ MyClass _ my return my.x; 1 在C+中,函數(shù)的參數(shù)有兩種傳遞方式,它們是值傳遞和  引用傳遞 。2 當一個成員函數(shù)被調(diào)用時,該成員函數(shù)的 this指針 指向調(diào)用它的對象。3 在基類和派生類中,派生類可以定義其基類中

57、不具備的數(shù)據(jù)和操作。對兩個有相同名字的數(shù)據(jù)成員進行訪問時,如果沒有  作用域說明符 ,對此數(shù)據(jù)成員的訪問將出現(xiàn)歧義。4 拷貝構(gòu)造函數(shù)使用 &  作為參數(shù)初始化創(chuàng)建中的對象。5 在公有繼承的情況下,基類數(shù)據(jù)成員在派生類中的訪問權(quán)限 不變  。6 描述命題"A小于B或小于C"的表達式為  A 。 7   用 new 申請某一個類的動態(tài)對象數(shù)組時,在該類中必須能夠匹配到   構(gòu)造函數(shù) ,否則應用程序會產(chǎn)生一個編譯錯誤。 9   為了避免可能出現(xiàn)的歧義, C+ 對 ifels

58、e 語句配對規(guī)則規(guī)定為: else 總是與 最接近的還未配對的 if   配對。 10   設 "int a=3,b=4,c=5;" ,表達式 " ( a+b ) >c&&b=c" 的值是 false   。 11   面向?qū)ο蟮某绦蛟O計有四大特征,它們是 抽象、封裝、繼承   、多態(tài)   。 12   在 C+ 中,定義重載函數(shù)時,應至少使重載函數(shù)的 參數(shù)個數(shù)或參數(shù)類型   ; 13   構(gòu)造函數(shù)與析構(gòu)函數(shù)除功能不同外,在定義形式上

59、,它們的區(qū)別還包括構(gòu)造函數(shù)名與類名相同,而析構(gòu)函數(shù)名是在類名前加一個 。 16   在 C+ 類中, const 關(guān)鍵字可以修飾對象和成員函數(shù), const 對象不能 被更新   , const 成員函數(shù)不能 更新對象的數(shù)據(jù)成員   。 17   舉出 C+ 中兩種用戶自定義的數(shù)據(jù)類型: 結(jié)構(gòu)體   、枚舉類型   。 18  C+ 中沒有字符串類型,字符串是通過   數(shù)組 來表示的,每一個字符串都有一個結(jié)尾字符 0   。 19  C+ 中沒有輸入輸出語句,輸入輸出是通過   流操作

60、 實現(xiàn)的,   寫出一條打印整型變量 n 的輸出語句 : cout< 。 20 、在語句 int a10; 中, 10 的含義是 數(shù)組的大小為 10 。 21 、在函數(shù)中有這樣的語句來申請空間: int *p=new int10; 要釋放該空間應使用語句: delete p 。 22 、函數(shù)重載的條件是 函數(shù)名相同,參數(shù)的個數(shù)或形參類型不同 。 23 、對于類中的非靜態(tài)函數(shù)成員,都包含一個默認的指針 this ,它代表 正在被成員函數(shù)操作的對象 。 24 、已知變量 x 的值是 3 ,則表達式 x+=3,x+,x+2 的值是 9 。 25 、類 X 的靜態(tài)整型數(shù)據(jù)成員 i 的初

61、值是 10 ,定義的方法是 static int i=10; 。 26 、結(jié)構(gòu)數(shù)據(jù)成員的默認訪問權(quán)限是 pirvate 。 27 、要使語句 p=new double125; 能夠正常執(zhí)行,變量 p 的定義應為 double *p   。 28 、語句 char c20="Good morning" c4=0; cout< 的執(zhí)行結(jié)果是 Good 。 三、 程序填空1、以下程序?qū)崿F(xiàn)求1100這100個整數(shù)的和的運算。#include void main( int  i ,sum;      

62、; sum=0;for(i=1; i < 100     ;  i+          sum+=i                ;cout<<”sum=”< 2、以下程序?qū)崿F(xiàn)從鍵盤輸入兩個整數(shù)a和b,輸出其中大者的功能(不考慮相等的情況)#i

63、nclude void main(  int a,b                      cin>>a>>b;        if(    a>b         

64、    cout<<”最大值為:”<        else                 cout<<”最大值為:”< 3.設有一函數(shù),其代碼如下:int power (x,n int i,p; for (p=1,i=1; i<=n;+i p=p*x;    &#

65、160; return(p;現(xiàn)要求取消變量i,重寫該函數(shù)如下,請在空白上填上適當內(nèi)容。int  power (int x,int nint p;for ( p=1 ; n>0; _n-_p=p*x; return (p;4.本程序用古典的Eratosthenes的篩法求從2起到指定范圍內(nèi)的素數(shù)。如果要找出2至10中的素數(shù),開始時篩中有2到10的數(shù),然后取走篩中的最小的數(shù)2,宣布它是素數(shù),并把該素數(shù)的倍數(shù)都取走。這樣,第一步以后,篩子中還留下奇數(shù)3、5、7、9:重復上述步驟,再取走最小數(shù)3,宣布它為素數(shù),并取走3的倍數(shù),于是留下5、7。反復重復上述步驟,直  至篩中為空

66、時,工作結(jié)束,求得2至10中的全部素數(shù)。程序中用數(shù)組sieve表示篩子,數(shù)組元素sievei的值為1時,表示數(shù)i在篩子中,值為-1時表示數(shù)i已被取走。 #include const int MAX=22500;void main(  unsigned int i , range , factor , k ;   int sieveMAX ;   cout<<"please input the range : "   cin>>range;  /*range指出在

67、多大的范圍內(nèi)尋找素數(shù) */   for (i=2 ; i<=range ; i+  /* 篩子初始化 */        sievei=1          factor=2 ;   while (factor<=range  if ( sievefactor =1       

68、;         /*篩子最小數(shù)是素數(shù) */        cout<         k=factor;        while (k<=range    /*移走素數(shù)的倍數(shù) */ sievek=-1       

69、;         /*篩中的個數(shù)減一 */  k=k+factor      ;                 factor+ ;    四、 程序閱讀1、 int a,b,s;        &

70、#160;                  2、 int x=7,y=4,z;    a=12;b=35;                        &#

71、160;   if(x>y  z=x;    s=a+b;                                else    z=y;    cout&

72、lt;<”s=”< ” z=”< 輸出結(jié)果為:    s=47                      輸出結(jié)果為:   z=7      3、int x=6;       

73、60;                  4、int x;while(x+<5                           for(x=1;x<10;

74、x+cout<<”good”;                         if(x%3= =0cout<<“thats the end”;                

75、    cout< 輸出結(jié)果為: thats the end           輸出結(jié)果為:  369            5、int n=12;               &#

76、160;         6、int i;    int data8;  if(n>5                              for(i=0;i<8

77、;i+ if(n<11  cout<<”right!”;            datai=i;else  cout<<”left!”;              for(i=7;i>=0;i-else    cout<<”center!”;  

78、60;             cout< 輸出結(jié)果為:     left                  輸出結(jié)果為:  76543210         &#

79、160;1、#include void main(int a,b,c,;c=2,c+=10;a = 10;b=11;a * = 2;b / = 2;c % = 2;cout< 輸出結(jié)果:20,5,02、#include void main(int a = 50 , b(0 ;b = +a;cout< b = a+;cout< 輸出結(jié)果:51,5152,515、#include void main(int i;for(i=4 ; i<=10 ; i+ if (i%3= =0 continue; cout< 輸出結(jié)果:4578106.分析以下程序執(zhí)行結(jié)果#includ

80、e int add(int x,int y    return x+y;double add(double x,double y    return x+y;void main(    int a=4,b=6;    double c=2.6,d=7.4;    cout< 解:      本題說明函數(shù)重載的使用方法,   

81、0; 這里有兩個 add( 函數(shù),一個 add( 函數(shù)的參數(shù)與返回值為 int 型,另一個的參數(shù)與返回值為 double 型,它們是根據(jù)參數(shù)類型自動區(qū)分的。 所以輸出為: 10 , 10 7.分析以下程序的執(zhí)行結(jié)果#include class Sample    int i;    double d;    public:        void setdata(int ni=n;    

82、0;   void setdata(double xd=x;        void disp(                    cout<<"i="<         ; void main( Sample s;

83、    s.setdata(10;     s.setdata(15.6;     s.disp(; 解:     本題說明重載成員函數(shù)的使用方法。 setdata( 成員函數(shù)有兩個,根據(jù)其參數(shù)類型加以區(qū)分。所以輸出為: i=10, d=15.6 8.分析以下程序的執(zhí)行結(jié)果#include void main(    int a;    int &b=a;    / 變

84、量引用    b=10;    cout<<"a="< 解:     本題說明變量引用的方法。 b 是 a 的引用,它們分配相同的空間, b 的值即為 a 的值。 所以輸出為 a=10 。 注意:引用是引入了變量或?qū)γ鞯囊粋€ 義詞,引用不產(chǎn)生對象的副本。 9.分析以下程序的執(zhí)行結(jié)果#include class Sample    int x;    public:    

85、;    Sample(;        Sample(int ax=a;        Sample(Sample &ax=a.x+1;        void disp(cout<<"x="< ; void main(     Sample s1(2,s2(s1;  &

86、#160;  s2.disp(; 解:     本題說明類拷貝構(gòu)造函數(shù)的使用方法。 Sample 類的 Sample(Sample &a 構(gòu)造函數(shù)是一個拷貝構(gòu)造函數(shù),將 a 對象的 x 值賦給當前對象的 x 后加 1 。 所以輸出為: x=3 。 10.分析以下程序的執(zhí)行結(jié)果#include void swap(int &x,int &y    int temp;    temp=x;  x=y;  y=temp;void main

87、(    int x=10,y=20;    swap(x,y;    cout<<"x="< 解:      這里的函數(shù)采用引用調(diào)用的方式,所以輸出為: x=20,y=10 注意:在函數(shù)調(diào)用里,引用調(diào)用與傳址調(diào)用的效果相同,但更加簡潔直觀。 11.分析以下程序的執(zhí)行結(jié)果#include void main(    int a=10,20,30,40,*pa=

88、a;    int *&pb=pa;    pb+;    cout<<*pa< 解:      pa 為數(shù)組的指針,首先指向 a0 , pb 是 pa 的引用,當執(zhí)行 pb+ 時,也使 pa 指向了 a1 ,所以輸出為 :20 12 . 分析以下程序的執(zhí)行結(jié)果 #include class Sample     int x;    

89、0;public:         Sample(;         Sample(int ax=a;         Sample(Sample &ax=a.x+ +10;         void disp(cout<<"x="<

90、 ; void main(     Sample s1(2,s2(s1;     s1.disp(;     s2.disp(; 解:     Sample 類的 Sample(Sample &a 構(gòu)造函數(shù)是一個拷貝構(gòu)造函數(shù),將 a 對象的 x 增 1 然后加上 10 后賦給當前對象的 x ,由于 a 是引用對象,所以輸出為:         x=3 

91、0;    / + 運算的結(jié)果         x=12     / 2+10 13.寫出下列程序的運行結(jié)果。    #include     int f(int a     return +a;      int g(int& a     return +a;      void main(      int m=0,n=0;     m+=f(g(m;     n+=f(f(n;   

溫馨提示

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

評論

0/150

提交評論