【正文】
s real name was Nasreddin. He was wise and witty and, more importantly, he had the courage to resist the exploitation of noblemen. He was also full of passion and tried his best to help poor people. Adventure of Shuke and Beita【舒克與貝塔】 Adventure of Shuke and Beita (Chinese: 舒克和貝塔 ) is a classic animation by Zheng Yuanjie, who is known as King of Fairy Tales in China. Shuke and Beita are two mice who don39。 //或者 if(n==0) return 1。 in/2。 for(i=n1。a39。如 (13,20)就是其中的一組解,并按此格式輸出每組解。 int x, s = 0, n = 0。in。 i + +。 whlie(strcmp(a,”end”)! =0){ fout a endl。StrNode * next。} f =new StrNode。} 這是一個(gè)>>操作符重載函數(shù)。/ /年齡 / / float pay。 b = new int[m]。 for(i =0。i)cout *(p) ? ?。 4. double SF (double x,int n) { / /n為大于等于 0 的整數(shù) double p=1,s=1; for(int i=1; i=n; i+ +) { p* =x; // p = x ^ n s+ =p/(i+1); } return s; } 函數(shù)功能:計(jì)算并返回 s的值其中 s = 1 + x/2 + x^2/3 + x^3/4 + … + x^(n 1)/n + x^n/(n+1) 5.# include bool SG(int x) { / /x為大于等于 2 的整數(shù) int a=int(sqrt(x)); / /取 x的平方根 int i=2; while(i=a) { if(x%i= =0) break; i+ +; } if(i=a)return 0; else return 1; } 函數(shù)功能:判斷整型參數(shù) x是否為素?cái)?shù)(質(zhì)數(shù)),若是素?cái)?shù)剛返回 1 否則返回 0 。} 運(yùn)行結(jié)果 : 15 25 四 、寫出下列每個(gè)函數(shù)的功能 1.# include int SA(int a,int b) { if(ab) return 1; else if(a= =b) return 0; else return –1; } 函數(shù)功能:判斷 a、 b 兩整型參數(shù),若 a> b 返回 1,若 a= b返回 0,若 a< b返回- 1 2. int SC(int a,int b,int c) { if(a=b amp。} 運(yùn)行結(jié)果 : 19 8 7 2 10. include templateclass TT class FF{ TT a1,a2,a3。 return r。 x){ B r。)。)。else exit(1)。 :return a * b。} int Comp(){ switch(op){ case 39。} ~B(){cout”Destructor B! ”bendl。}}。 void main(){ A x(9),* p。 A * p = new A(10)。}}。 void main( ){ A x,y(6,3), z(8,10)。x. pay = f。 //年齡 float pay。 cout y. name ?? ? ? y. payendl。 //姓名 int age。 LH(d,5)。}} void main(){ int * d = new int[5]。 coutendl。 for(int i = 0。} void main(){ int x =5,y =8。 cout a ? ? b endl。 cout b 39。 } 運(yùn)行結(jié)果: 20 40 30 60 19. include int LA(int * a,int n){ int s = 0。 * p= x +10。 p+=3。 for(i =0。i++){ coutsetw(5) *p++。 b endl。} 運(yùn)行結(jié)果: 2 0 24 14. include void main(){ int a =10,b =20。j++) if(a[i][j]m) {m=a[i][j]。 coutendl。i10。i5。break。break。 } couti139。 int i1=0, i2=0, i=0。 for(int i=1。i++){ if(strcmp(a[i],p1)0) p1=a[i]。i139。i10。} 運(yùn)行結(jié)果: 25 20 include void main (){ int n=10,y=1。 if (I%3= =0) s+=I。} 運(yùn)行結(jié)果: 8 240 include void main ( ){ int s=0。 else exit(1)。} 運(yùn)行結(jié)果: good! pass! bad! well! include include double SD(int a,int b,char op) { double x。 default : cout “bad!” 。 ,被系統(tǒng)看作為一個(gè) 字符串流 。 AB 定義加號(hào)操作符重載成員函數(shù),實(shí)現(xiàn)兩個(gè) AB 類對(duì)象的加法,并返回相加結(jié)果,則該成員函數(shù)的聲明語(yǔ)句為: ABamp。 AB 中有一個(gè)公用屬性的靜態(tài) 數(shù)據(jù) 成員 bb,在類外不通過對(duì)象名訪問該成員 bb 的 訪問 為 AB::bb 。 AB 為一個(gè)類,則執(zhí)行 “AB a[10]。 的 初始化表 來實(shí)現(xiàn)的。} 。char* b。 60.假定 a為一個(gè)字符數(shù)組名,則元素 a[8]的字節(jié)地址為 a + 8 。”語(yǔ)句后, p 所指對(duì)象的值為 50 。 46.函數(shù)中的形參變量的初值由 調(diào)用 該函數(shù)時(shí)獲得。 amp。 34.邏輯表達(dá)式 ab | | b= =5 的相反表達(dá)式為 a=b amp。 29.增量表達(dá)式 + +y表示成賦值表達(dá)式為 y=y+1。 23.假定 x=10, y=6,則表達(dá)式 2+x+ +和 + +y*3 的值分別為 12 和 21 。 15.假定一個(gè)枚舉類型的定義為 “enum RA{xa,xb,xc,xd}; ”,則執(zhí)行 “cout”xc=”xcendl; ”語(yǔ)句得到的輸出結(jié)果為 xc=2 。 7. C++源程序文件的缺省擴(kuò)展名為 .cpp ,由 C++源程序文件編譯而成的目標(biāo)文件的缺省擴(kuò)展名為 .obj ,由 C++目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為 .exe 。 D. int *p=m。 A. 實(shí)數(shù)型 B. 實(shí)數(shù)指針型 C. 函數(shù)指針型 D. 數(shù)組型 40. 假定變量 m 定義為 “int m=7。 A. 1~19 B. 1~20 C. 0~19 D. 0~20 37. 當(dāng)處理一個(gè)特定的問題時(shí),若循環(huán)次數(shù)已知,則通常采 2 用( A)來解決。 A. int a[5]。 31. C++程序的基本功能模塊為( D)。 29. 當(dāng)類中一個(gè)字符指針成員指向具有 n 個(gè)字節(jié)的存儲(chǔ)空間時(shí),它所能存儲(chǔ)字符串的最大長(zhǎng)度為( C)。 D. int a[5]。 A. 復(fù)合 B. if C. switch D. while 25. 在下面的 do 循環(huán)語(yǔ)句中,其循環(huán)體被執(zhí)行的次數(shù)為( A)。 20. 假定 AB 為一個(gè)類, px 為指向該類動(dòng)態(tài)對(duì)象數(shù)組的指針,該數(shù)組長(zhǎng)度為 n,則執(zhí)行 “delete []px。 D. 19. 假定有定義 “struct BOOK{char title[40]。 A. a+4 B. *a+4 C. *(a+4) D. *(a+16) 16. 下面循環(huán)語(yǔ)句執(zhí)行結(jié)束后輸出的 i值為 ( B)的值。 A. 它們均為真 B. 其中一個(gè)為真 C. 它們均為假 D. 其中一個(gè)為假 13. 聲明或定義一個(gè)內(nèi)聯(lián)函數(shù)時(shí),必須在函數(shù)開始使用保留字( D)。 C. char a[15]={?1?,?2?}。 y!=5 C. x0 || y!=5 D. x0 amp。 1 本科 《 C++語(yǔ)言程序設(shè)計(jì)》期末復(fù)習(xí)模擬訓(xùn)練題 一、單選題 1.在每個(gè) C++程序中都必須包含有這樣一個(gè)函數(shù),該函數(shù)的函數(shù)名為( A)。amp。 D. char a[10]=?5?。 A. static B. const C. extern D. inline 14. 在下面的函數(shù)聲明中,存在著語(yǔ)法錯(cuò)誤的是( D)。 for(int i=0。 float price?!闭Z(yǔ)句時(shí),自動(dòng)調(diào)用該類析構(gòu)函數(shù)的次數(shù)為( B)。 int i=0。 27. 下面的( C)保留字不能作為函數(shù)的返回類型。 A. n B. n+1 C. n1 D. n2 30. 假定 AB 為一個(gè)類,則該類的拷貝構(gòu)造函數(shù)的聲明語(yǔ)句為( D)。 A. 表達(dá)式 B. 標(biāo)識(shí)符 C. 語(yǔ)句 D. 函數(shù) 32. 存儲(chǔ)以下數(shù)據(jù),占用存儲(chǔ)字節(jié)最多的是( A)。 B. int M=10。 A. for 循環(huán) B. while 循環(huán) C. do 循環(huán) D. switch語(yǔ)句 38. 在下面循環(huán)語(yǔ)句中內(nèi)層循環(huán)體 S 語(yǔ)句的執(zhí)行總 次數(shù)為( D)?!?,則定義變量 p的正確語(yǔ)句為( B)。 二 、填空題 1. C++語(yǔ)言中的每條基本語(yǔ)句以 。 8.程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間應(yīng)使用 空格 或 , 符號(hào)作為分 隔符。 16 .假定一個(gè)枚舉類型的定義為 “enum RB{ab,ac=3,ad,ae}x=ad; ”則 x的值為 4 。 24 .算術(shù)表達(dá)式 (x2+y2)/(2xy) 對(duì)應(yīng) C++ 表達(dá)式為 (x*x+y*y)/(2x*y) 。 。amp。 y為真的條件是 x和 y均為 true。 47.函數(shù)調(diào)用時(shí),實(shí)參向形參的傳送分為 按值傳遞 和 按地址傳遞 兩種傳送方式。 表達(dá)式值為: 50 53.假定 a是一個(gè)指針數(shù)組,則 a+i 所指對(duì)象的地址比 a地址大 i* sizeof(unsigned) 字節(jié)。 61.假定 a為一個(gè)整型數(shù)組名,則元素 a[4]的字節(jié)地址為 a + 4* sizeof( int ) 或 a + 16 。} 。”,則該類型的大小為 24 字節(jié)。 賦值語(yǔ)句 實(shí)現(xiàn),也可以通過構(gòu)造函數(shù)中的 初始化表 實(shí)現(xiàn)。”語(yǔ)句時(shí),系統(tǒng)自動(dòng)調(diào)用該類構(gòu)造函數(shù)的次數(shù)為 10 。 n 個(gè)字節(jié)的儲(chǔ)存空間時(shí),它所能儲(chǔ)存字符串的最大長(zhǎng)度為 n- 1 。 operator+(AB amp。 ifstream 流類定義一個(gè)流對(duì)象并打開一個(gè)磁盤文件時(shí),文件的隱含打開方式為 ios :: in,當(dāng)使用 ofstream 流類定義一個(gè)流對(duì)象并打開一個(gè)磁盤文件時(shí),文件的隱含打開方式為 ios::out 。 break。 //局部變量 x的改變不影響 main函數(shù)中的 x switch (op) { case ?x?:x=double(a) + b。 break。 for (int I=1。 // s=3+6+9+12+15+18 } cout ”I,s=”I”,”sendl。 while (n){