![C++語言程序設(shè)計(jì)復(fù)習(xí)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/8/2bbd490f-15e7-4de9-a22b-882c09c5f098/2bbd490f-15e7-4de9-a22b-882c09c5f0981.gif)
![C++語言程序設(shè)計(jì)復(fù)習(xí)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/8/2bbd490f-15e7-4de9-a22b-882c09c5f098/2bbd490f-15e7-4de9-a22b-882c09c5f0982.gif)
![C++語言程序設(shè)計(jì)復(fù)習(xí)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/8/2bbd490f-15e7-4de9-a22b-882c09c5f098/2bbd490f-15e7-4de9-a22b-882c09c5f0983.gif)
![C++語言程序設(shè)計(jì)復(fù)習(xí)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/8/2bbd490f-15e7-4de9-a22b-882c09c5f098/2bbd490f-15e7-4de9-a22b-882c09c5f0984.gif)
![C++語言程序設(shè)計(jì)復(fù)習(xí)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/8/2bbd490f-15e7-4de9-a22b-882c09c5f098/2bbd490f-15e7-4de9-a22b-882c09c5f0985.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第 1 頁共 31 頁c+ 程序復(fù)習(xí)題一. 選擇題(每題 2 分,共 40 分)1.c+規(guī)定,在一個(gè)源程序中,main() 函數(shù)的位置() 。 a.必須在最開始 b.必須在最后 c. 可以任意 d.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面2. 以下()是 c/c+合法的標(biāo)識符。a.char 2 b.x c.int d.7bx 3. 下面的程序,對于輸入:2 9 15 ,輸出的結(jié)果是() 。 #include void main() int a; float b; cout”input a,b” ab; cout”a+b=”a+bendl; a.2 b.11 c.26 d.24 4. 下面關(guān)于編譯預(yù)處理命令
2、的說法中,正確的是() 。 a.一條文件包含命令能包含多個(gè)文件 b.文件包含命令不可以嵌套使用c.編譯 預(yù)處理命令是在編譯之前被處理的命令 d.編譯預(yù)處理命令中的“#”可以省略5.在以下關(guān)于c+語言的敘述中,正確的是()a if 語句結(jié)構(gòu)中必須有else 語句bswitch 語句結(jié)構(gòu)中必須有default 語句cc+程序必須有return 語句d c+中使用流來執(zhí)行標(biāo)準(zhǔn)的輸入輸出操作6. 下列不正確的變量定義方法是() 。 a.int a,&b=a; b. float a,*b=&a; c.int a(4),b(0); d. int a=b=5; 7. 下列運(yùn)算符優(yōu)先級按由高到
3、低的順序排列正確的是() 。 a.*=. &.!=.% b.*=. %. &. != c.%. ! = .& .*= d. &. !=. %.= 8. 已知 x,y 為整型, z 為實(shí)型, ch 為字符型,下列表達(dá)式中合法的是() a.z=(y+x)+ b.x+y=z c.y=ch+x d.y=z%x 9. 若有變量定義”int a=7; ”,則下列語句組對應(yīng)的輸出結(jié)果是() switch(a%5) 第 2 頁共 31 頁 case 0: couta+; case 1: cout+a; case 2: couta-; case 3: cout -a; defau
4、lt:cout”其它值” ; a. 其它值 b.5 c.7 d.75 其它值 10. 執(zhí)行下列程序段后,變量k的值為() for(k=0,m=1;m4;m+) for(n=1;nc,c!= n ) coutc+2; a.222 b. cde c.676869 d.333 12. 以下不能對二維數(shù)組a 初始化的語句是() a.int a2=1,2; b.int a23=1,2,3,4,5,6; c.int a23=1; d.int a23=1,2; 13. 已知有語句“ int a34=1,2,5,3,2,4,7,9,3,6,5,8,*p=&a00;” ,則表達(dá)式(*p+2)+*(p+2
5、)的值應(yīng)為() 。 a.10 b.5 c.6 d.8 14. 要比較兩個(gè)字符數(shù)組a,b 中字符串是否相等,下面正確的是() 。 a.a=b b. strcmp(a,b)=0 b.strcpy(a,b) d.strcmp(a,b)=0 15. 若函數(shù)的類型和return語句中的表達(dá)式類型不一致,則() a.編譯時(shí)出錯(cuò)b.運(yùn)行時(shí)出現(xiàn)不確定結(jié)果 c.不會(huì)出錯(cuò),且返回值的類型以return語句中表達(dá)式的類型為準(zhǔn)d.不會(huì)出錯(cuò), 且返回值的類型以函數(shù)類型為準(zhǔn)。16. 下面函數(shù)說明正確的是() a.void f1 (int a=3,int b,int c); b.void f2 (int a,int b=3
6、,inc c); c.void f3(int a,int b,int c=3); d.void f4(int a,int b,int 3); 17. 下面程序的輸出結(jié)果是() #include int m=10; void f(int m,int &n) 第 3 頁共 31 頁 m=m+2;n=n+2; void main() int n=5; f(m,n); cout”m= ”m ”n=” ngetname() 21.c+源程序文件的擴(kuò)展名為() a.cpp b.c c.dll d.exe 22. 以下()是 c+ 合法的表達(dá)式 a. a=1 ,a+ b. (x+y)+ c. a+b
7、=c d. 12.25%10 23. 以下程序的輸出結(jié)果是:()#include int fun(char *s) char *p=s; while (*p!=0) p+; return (p-s); void main() coutfun(abc)endl; a.0 b.1 c.2 d.324. 下面敘述中正確的是()a.for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況b.for循環(huán)同 do-while語句一樣,先執(zhí)行循環(huán)體再判斷c. 不管 哪種形式的循環(huán)語句,都可以從循環(huán)體內(nèi)轉(zhuǎn)到循環(huán)體外d.for循環(huán)體內(nèi)不可以出現(xiàn)while 語句25. 使用()可以設(shè)置數(shù)據(jù)輸出的寬度。 a.setbase(int
8、 n) b.s etw(int n) c.setfill(int n) d.setprecision(int n) 第 4 頁共 31 頁26. 在 int a3=1,3,2,4,5,6,0中, a22的值是 ( ) a.3 b. 2 c. 6 d.4 27. 下面正確定義數(shù)組的語句是()aint x2=2,1,3,2 b. int x=2,1,3,2 c. int x2=2,1,3,2 d. int x2,2=2,1,3,2 28. 已知 char c; const char *pc=asdf ; ( )是正確的。a.pc= dfgh b.*pc=b c.*pc+=y d.pc=&c
9、 29. 若有變量定義”int a=7; ”,則下列語句組對應(yīng)的輸出結(jié)果是() switch(a%5) case 0: couta+; case 1: cout+a; case 2: couta-; case 3: cout -a;break; default:cout”其它值” ; a.5 b.7 c.75 d.75其它值 30. 以下程序段的輸出結(jié)果是() for(i=4;i=10;i+) if(i%3=0) continue; couti; a.45 b. 45781 0 c.69 d.678910 31. 執(zhí)行下列語句后的輸出結(jié)果是() 。int hot=10; int &ra
10、d=hot; hot+=10; coutradendl; a.0 b.20 c.10 d.30 32. 若用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,傳遞給形參的是。a.數(shù)組的首地 址 b.數(shù)組中第一個(gè)元素的值 c. 數(shù)組全部元素的值 d.數(shù)組元素的個(gè)數(shù)33. 定義如下變量和數(shù)組: int i; int x33=1,2,3,4,5,6,7,8,9; for(i=0;i3;i+) coutxi2-i; 則下面語句的輸出結(jié)果是() 。 a.1 5 9 b.1 4 7 c.3 5 7 d.3 6 9 34. 將兩個(gè)字符串連接起來組成一個(gè)字符串時(shí),選用的函數(shù)是。 a. strlen() b. strcap() c.
11、strcat() d. strcmp() 35. 若有以下程序段: int x12=1,2,3,4,5,6,7,8,9,10,11,12; char c=a ,d,g; 第 5 頁共 31 頁則數(shù)值為4 的表達(dá)式是() 。 a. xg-c b. x4 c. x,d? - ,c? d. x ? d? -c36. 若函數(shù)的調(diào)用形式如下:f(x1,x2,x3),(y1,y2) 則函數(shù)形參個(gè)數(shù)是() 。a. 2 b. 3 c.4 d. 5 37. 有如下程序#include #include using namespace std; int main() coutsetprecision(3)fixe
12、dsetfill(*)setw(8); cout 12.345 34.567; return 0; 若程序的輸出是:*12.345*34.567 則程序中下劃線處遺漏的操作符是_。a.setprecision(3) b.fixed c.setfill(*) d.stew(8)38. 在私有繼承中,基類的公有成員將成為其派生類的() 。 a.公有 b.保護(hù) c. 私有 d.不能訪問39. 下列哪個(gè)不是成員訪問限定符。a.public b.protected c.private d.static 40在下面關(guān)于函數(shù)的描述中錯(cuò)誤的是()a在一個(gè)源文件中,如果函數(shù)定義在先,調(diào)用在后,則不必聲明該函數(shù)b
13、如果一個(gè)函數(shù)在一個(gè)源文件里定義,而調(diào)用在另一個(gè)源文件中,則必須在調(diào)用之前聲明該函數(shù)c函數(shù)的聲明應(yīng)使用函數(shù)原型d在一個(gè) 源文件中,如果自定義函數(shù)調(diào)用在先,定義在后,則不必聲明該函數(shù)41. 若有 int a34=1,2,3,4,5,6,7,8,9,10,11,12; int (*q)4=a;*q=a0;則能夠正確表示數(shù)組元素a12的表達(dá)式是() 。 a.*(*q+1)2 b. *(*(q+5) c. (*q+1)+2 d. *(*(q+1)+2) 42. 類是 c+中的一種新的數(shù)據(jù)類型,下列有關(guān)類的說法不正確的是() 。a. 類是一種用戶自定義的數(shù)據(jù)類型b. 只有類中的成員函數(shù)才能存取類中的私有成
14、員c在類中,如果不做特別說明,所指的數(shù)據(jù)均為私有類型d. 在類中,如果不做特別說明,所有的成員函數(shù)均為公有類型43. 設(shè) int x=1,3,5,7,9,11,13,*p=x;則不能正確引用數(shù)組元素的表達(dá)式是()第 6 頁共 31 頁 a.*(p-) b. *(-p) c.*(p+) d.*(+p) 44. 執(zhí)行下面程序段后,a 的值為() 。int a,b; for(b=1,a=1;b=10) break; if (a%2= =1) a+=5; continue; a-=3; a. 2 b. 6 c. 10 d. 8 45. 在下面的引用定義中,正確的是() 。a. int x,&y
15、; y=x; b. int x,&y=x ; c. int &y=x,x; d. float z; int x,y=&z; 46. 下面對模板的聲明正確的是_( ). a. template b. template c. template d. template 47. 已知一個(gè)類a的定義如下,則執(zhí)行“ a x(3) ;”語句后, x.a 和 x.b 的值分別為() class a int a,b ; public: a(int aa=1,int bb=0) a=aa;b=bb; a. 1和 0 b. 3 和 0c. 1和 3 d. 3和 0 48 c+ 源程序文件的擴(kuò)
16、展名為()a. .cpp b. .obj c. .c d.exe 49. 下列變量名中, ()是合法的。a. double b. a+a c. china d. 5s 50. 下列符號能用作c+ 標(biāo)識符是的() 。a. xyz/2 b. 2xsalec. x-sale d. x_sale 51.( )不是 c+的基本數(shù)據(jù)類型。a字符類型b數(shù)組類 型c整數(shù)類型d布爾類型52下列運(yùn)算符中優(yōu)先級最高的是()a% b( )c ! d/第 7 頁共 31 頁53字符串常量“me ”的字符個(gè)數(shù)是() 。a4 b3c 2 d 154在 c+語言中, 080 是()a八進(jìn)制數(shù)b十進(jìn)制數(shù)c十六進(jìn)制數(shù)d非法數(shù)55
17、整型變量i 定義后賦初值的結(jié)果是() 。int i=2.8*6 ; a 12 b16c17 d18 56如有 int m=31; 則表達(dá)式( m+*1/2 )的值是()a 0 b 15 c15.5 d 16 57在 c+語言中,自定義的標(biāo)識符()a能使用關(guān)鍵字并且不區(qū)分大小寫b不能使用關(guān)鍵字并且不區(qū)分大小寫c能使用關(guān)鍵字并且區(qū)分大小寫d不 能使用關(guān)鍵字并且區(qū)分大小寫58下列 c+標(biāo)點(diǎn)符號中表示一條語句結(jié)束的是()a # b/ c d ;59. 下列 c+標(biāo)點(diǎn)符號中表示一條預(yù)處理命令開始的是()a #b/ c /* d &60定義如下變量:int i=2 ;int j=3 ;則 i/j的
18、值是()a 0.7 b 0.66667c0.66666. d 0 61已知 int a=2,a+=a-=a*a 的值是() 。a -4 b-2 c0d 462語句 n1=2,n2=+n1,n1=n2+; 執(zhí)行后變量n1,n2 的值分別為()a 3,4 b3,3 c 2,3 d 2,463下列程序段執(zhí)行后輸出結(jié)果為()char a=? a? ; cout” a=” a-32endl; a a=a ba=33c a=65d a=a-32 64 for(i=0,x=0; !x&i=3;i+)循環(huán)的次數(shù)為()a 4 b5 c1d 無限循環(huán)65若有如下程序段: int a=2,b=-1,c=2;
19、 if (ab) if (b0) c=0; else c+=1; cout” c=” cendl; 執(zhí)行后輸出結(jié)果是()a 2 b1 c 3 d 066有如下程序段:int i=10; switch(i) case 9: i+; 第 8 頁共 31 頁case 10: i+; case 11: i+; default: i+; 執(zhí)行后輸出結(jié)果是()a 11 b 12 c 13 d 14 67下列描述正確的是()a break 語句與 continue 語句完全一樣,可以相互代替。b用 break 語句可以提前終止整個(gè)循環(huán)c用 continue 語句可以提前終止整個(gè)循環(huán)d用 break 語句與
20、continue 語句都不能提前終止整個(gè)循環(huán)68以下 for 循環(huán)的執(zhí)行次數(shù)是()for (x=0,y=0 (y=123)&(x2); x+) a執(zhí)行 1 次b執(zhí) 行 2次c執(zhí)行 3 次d 無限次69為了避免嵌套的ifelse 語句的二義性,c 語言規(guī)定else 總是與()a縮排位置相同的if b在其之前未配對的if c在其之前未配對的最近的if d同一行上的if 70 break語句的作用是()a立即 跳出包含該break 語句的所在層的循環(huán)語句和switch 語句b立即跳出包含該break 語句的最小的各種循環(huán)語句c立即跳出包含該break 語句的 switch 語句d立即跳出包含
21、該break 語句的各層循環(huán)語句和switch 語句71下面程序段執(zhí)行完后,x 的值是()x=0 ; for (i=0 ; i90 ; i+) if (i) x+ ; a 0 b30 c89d 90 72 continue 語句的作用是()a結(jié)束包含該continue 語句的最小的各種循環(huán)語句b結(jié)束包含該continue 語句的各種循環(huán)語句c結(jié)束本次循環(huán),直接進(jìn)行循環(huán)條件的判斷d循環(huán)執(zhí)行完后,結(jié)束循環(huán)73下列程序段循環(huán)()次int x=-10 ; while (+x) a 9 b10 c11 d無限74有如下程序段: . for (int i=1; i4; i+) if (i%2=0) con
22、tinue; couti ” ,” ; 執(zhí)行以下程序段的輸出結(jié)果是() 。第 9 頁共 31 頁a 1 b1,3,4 c1,3,d 2,4 75用邏輯表達(dá)式表示“大于10 而小于 20 的數(shù)” ,正確的是()a 10 x10| x10&x20d!(x=20) 76如果 switch 語句中的選擇表達(dá)式是字符型變量code,下面哪一項(xiàng)case子句是合法的()a case “ 3” : bcase ,3?: ccase 3 : d case=3: 77設(shè) int a=10,b=11, c=12 ; (a+b)0 的值為() 。a true bfalse c與 n 的值相反d與 n 的值相同
23、80下列 do while 循環(huán)的循環(huán)次數(shù)是()int i=5 ; do couti-n; int an d const int n=10;int an; 88下面數(shù)組定義錯(cuò)誤的是()a #define n 5 char an= “ good” 第 10 頁共 31 頁b const int n=5; char an= “ good” c int n=5; char an= “ good” ; dconst int n=5; char an+2= “ good” ; 89執(zhí)行下列語句:int c4=0,1,2,3; for(int i=0;i4;i+) ci=ci+i;則 c3的值是 ( )。
24、a 0 b4 c6 d8 90數(shù)組 int area4=1,2,3,4;執(zhí)行程序for (int i=1;i=4;i+) areai-1=1; 那么 area4的值是() 。a 4 b 3 c1 d不 確定值91對字符數(shù)組進(jìn)行初始化,下列語句正確的是()a char a=” abcd” ; bchar a= ” abcd” ; cchar a4=” abcd” ; dchar a22= “ ab” ,” cd” ; 92下列關(guān)于指針運(yùn)算的描述錯(cuò)誤的是()a指針變量是用于存儲(chǔ)變量地址的變量b指針變 量是用于存儲(chǔ)變量值的變量c在一定條件下,指針變量可以為空值d可以使用指針變量來訪問數(shù)組93若已經(jīng)定
25、義了a 為 int 型變量,則對指針變量p 的定義及初始化正確語句是() 。a int *p=a; bint p=a; c int *p=*a; dint * p=&a 94. 已知一運(yùn)行正常的程序中有下面的語句,由此可知,變量a 和 b 的類型分別是()int *p2=&x,*p1=a;*p2=*b; a int 和 int bint * 和 int cint 和 int* dint *和 int * 95設(shè)有如下程序段,程序段運(yùn)行后輸出的結(jié)果是() 。 int a=1, b=3, c=5; int *p1=&a,*p2=&b,*p=&c; *p=*p
26、1*(*p2); coutcendl; a1 b3 c5 d 15 96設(shè)有如下程序段:int x=8,*p=&x; cout*p+endl; 輸出的值為()a 8 b 9 c8 的地址d 9 的地址97設(shè)有定義語句: int *point,a=4 ;和 point=&a;下面均代表地址的一組選項(xiàng)是()a a, point b&a,*point cpoint , &a d a , *point 98設(shè)有定義語句:int a10,*p=a ;對數(shù)組元素正確使用的語句是()a ap bpa c*(p+2) dp+299. 設(shè)有定義語句:int a10= 0,1,2,
27、3,4,5,6,7,8,9 ,*p=a ;則數(shù)值不為3 的表達(dá)式是()a a3 bp3 c p+=2,*(p+) d p+=2,*(+p) 100設(shè) int x=1,2,3,4,5,6 ; *p=x ;則數(shù)值為3 的表達(dá)式是()ap+=2,*+p bp+=2,*p+ cp+=3,*p d p+=2,+*p 第 11 頁共 31 頁101設(shè) int x10=10 ,9,8,7,6,5, 4,3,2,1 ; *p=x ; 則數(shù)值為2 的表達(dá)式是()aa9 b*p8 c *(a+8) d p+8 101設(shè)有如下程序段: char *s=abcde; s+=2; cout*sendl; 輸出的值為()
28、a cde bc cc 的地址d無確定的輸出結(jié)果102設(shè)有定義語句:int *p4;則標(biāo)志符p 是()a一個(gè)指向整型變量的指針b一個(gè) 指向整型的指針數(shù)組名c一個(gè)指針,它指向一個(gè)含有四個(gè)整型元素的一維數(shù)組d一個(gè)非法的定義語句103設(shè)有如下程序段:輸出的值為()int a33=9,8,7,6,5,4,3,2,1; int *p3; p1=a1; cout*(p1+2)endl; a 4b5 c6 d7 104c+ 中函數(shù)返回值的類型是由()a return 語句中的表達(dá)式類型所決定b調(diào)用該函數(shù)時(shí)的主調(diào)函數(shù)類型所決定c調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定d在定義該函數(shù)時(shí)所指定的函數(shù)類型所決定105以下敘述中正確
29、的是()a構(gòu)成 c+程序的基本單位是函數(shù)b可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)c主函數(shù)必須放在其他函數(shù)之前d所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義106以下正確的函數(shù)定義形式是()a int fun(int x; int y) bint fun(int x, int y) cint fun(int x, y) d int fun(int x ; ) 107若有函數(shù)原型int sum(int x, int y) ; 則使用語句coutsum(a, b) ; 調(diào)用該函數(shù)時(shí),實(shí)參變量a和形參變量x 之間的數(shù)據(jù)傳遞方式為() 。a指針傳遞b引用傳遞c值 傳遞d變量傳遞108要求函數(shù)的功能是交換x 和 y
30、中的值,且通過正確調(diào)用返回交換結(jié)果。能實(shí)現(xiàn)正確交換功能的函數(shù)是() 。a void funa(int &x, int &y) i nt p; p=x; x=y; y=p; bvoid funb(int x, int y) int t; t=x; x=y; y=t; c void func(int *x, int *y) *x=*y; *y=*; d void funb(int x, int y) x=x+y ; y=x-y ; x=x-y ; 109關(guān)于引用下列說法正確的是()a引用是一 種特殊類型的變量,是另一個(gè)變量的別名b引用在函數(shù)調(diào)用中傳遞的是變量的值第 12 頁共 31
31、 頁c在聲明引用時(shí),要給它另開辟內(nèi)存單元d在聲明引用時(shí),可以不進(jìn)行初始化110在 c+ 函數(shù)頭定義中,若省略了返回值的數(shù)據(jù)類型,其默認(rèn)的返回值的數(shù)據(jù)類型為()a int b void c float d double 111下面描述中,不正確的是() 。a在關(guān)鍵字private 后面聲明的成員,只允許本類中的函數(shù)訪問b在類的外部只能訪問類的公有成員c面向?qū)ο蟪绦蛟O(shè)計(jì)方法具有四個(gè)基本特征:抽象.封裝 .繼承 .多態(tài)性d函數(shù)的重載 體現(xiàn)了面向?qū)ο蟪绦蛟O(shè)計(jì)的繼承性112類 time 的構(gòu)造函數(shù)名是()a class bpublic cprivate d time113類創(chuàng)建的對象稱為()a屬性b類
32、的實(shí)例c基類d派生類114下面描述中,不正確的是()a構(gòu)造函數(shù)定義創(chuàng)建對象的方法,提供了初始化對象的一種簡便手段b析構(gòu)函數(shù)完成對象被刪除前的一些清理工作c如果程序中未聲明構(gòu)造函數(shù),則系統(tǒng)自動(dòng)產(chǎn)生出一個(gè)缺省形式的構(gòu)造函數(shù)d析 構(gòu)函數(shù)允許重載,但析構(gòu)函數(shù)不得返回任何值,即使關(guān)鍵字void 也不允許有。115以下哪項(xiàng)創(chuàng)建了名為dog 的 animal 對象()a animal “ dog” ; banimal dog; cdog “ animal ”ddog animal 116類 animal 的構(gòu)造函數(shù)名是() 。a animal banimalconstructor cconstanimal
33、d以上任何一項(xiàng)都可作為構(gòu)造函數(shù)名117以下哪項(xiàng)表明displaybreed() 函數(shù)是 animal 類的成員函數(shù)()a animal:displaybreed() banimal.displaybreed() cdisplaybreed():animal ddisplaybreed()&animal 118為了使類中的某個(gè)成員不能被類的對象通過成員選擇運(yùn)算符訪問,則不能把該成員的訪問權(quán)限定義為()a public bprotected cprivate dstatic 119類的構(gòu)造函數(shù)的作用是()a一般成員函數(shù)b類的初始化c對象的初始化d刪除對象120類具有哪四個(gè)基本特征()a抽象
34、隱藏繼承多態(tài)b抽象封裝繼承多態(tài)c抽象隱藏繼承封裝d重裝封裝繼承多態(tài)121由類創(chuàng)建的對象稱為()a屬性b類的 實(shí)例c基類d派生類122類的析構(gòu)函數(shù)的作用是() 。a一般成員函數(shù)b類的初始化c對象的初始化d 刪除 對象123以下不正確的說法是() 。a在 c+中,一個(gè)程序中的函數(shù)名不一定是唯一的。b在 c+中定義函數(shù)時(shí), 在返回值數(shù)據(jù)類型的前面加上關(guān)鍵字inline , 這種函數(shù)稱為內(nèi)聯(lián)函數(shù)。c在 c+中不 允許有兩個(gè)及以上的函數(shù)使用同一個(gè)函數(shù)名第 13 頁共 31 頁d在定義函數(shù)時(shí),還可以對形式參數(shù)進(jìn)行初始化,即給該形式參數(shù)指定默認(rèn)值。124以下正確的說法是()a全局 變量如果沒有指定初值,則其
35、初值為0 b靜態(tài)變量如果沒有指定初值,則其初值為0 c局部變量如果沒有指定初值,則其初值為0 d函數(shù)中的靜態(tài)變量在函數(shù)每次調(diào)用時(shí)都會(huì)重新設(shè)置初值125. 若程序中定義了以下函數(shù) double myadd(double a,double b) return (a+b) ; 并將其放在調(diào)用語句之后,則在調(diào)用之前應(yīng)該對該函數(shù)進(jìn)行說明,以下選項(xiàng)中錯(cuò)誤的說明是a. double myadd(double a,b) ; b. double myadd(double,double); c. double myadd(double b,double a) ; d. double myadd(double x,
36、double y); 126. 若有以下的說明和語句, 則在執(zhí)行 for語句后 ,*(*(pt+1)+2)表示的數(shù)組元素是( ) int t33,*pt3,k; for(k=0;kname 128執(zhí)行下列程序段后, 變量 i 的值為() 。#define ma(x,y) (x)*(y) int i=5; i=ma(i,i+1)-7; a. 30 b. 23 c. 19 d. 1 129對以下結(jié)構(gòu)定義: struct int len; char *str; *p; *p-str+中的 +加在() 。第 14 頁共 31 頁a. 指針 str上b. 指針 p 上 c. str所指的內(nèi)容 d.以上均
37、不是130. 執(zhí)行下面程序段后,a 的值為() 。int a,b; for(b=1,a=1;b=10) break; if (a%2=1) a+=5; continue; a-=3; a. 2 b. 6 c. 10 d. 8 131以下選項(xiàng)中, ()是合法的 c+ 語言的長整型常量。a0l b 5712700 c0.05483874 d2.18159e+9 132有如下函數(shù)void sfun(int *p) *(+p)=0; 則執(zhí)行以下程序段后,結(jié)果是( ) int a2=5,5; sfun(a); couta0” , ”a1; a. 5 ,5 b. 0, 5 c. 5, 0 d. 0 ,0
38、133有以下函數(shù)char *fun(char *p) return p; 該函數(shù)的返回值是()a. 無確切的值b. 形參 p 中存 放的地址值c. 形參 p 自身的地址值d. 編譯有錯(cuò)134下面程序的執(zhí)行結(jié)果是()#include 第 15 頁共 31 頁void main() char a= h, e, l , l , o, 0 ; int i,j; i=sizeof(a)/sizeof(char); j=strlen(a); couti b?(bc?1:0):0;功能等價(jià)的是a if(ab) &(bc) ) k=1; b if(ab) |(bc) ) k=1 else k=0; c
39、 if(ab) k=1; else if(bc) k=1; else k=0; 136下面各語句中,能正確進(jìn)行賦字符串操作的語句是() a. char s5=abcde; b char s5=a,b,c,d,e; c. char *s; s=abcde; dchar *s; couts; 137. 以下程序的執(zhí)行結(jié)果是()int x,y; x=10;y=0; do x+=2;y+=x; coutx=x,y=y20) break; while(x=14); a. x=12 ,y=12 b.x=12,y=12 c.x=12;y=24 d.x=12,y=12x=14 ,y=12 x=14,y=26
40、x=16,y=28 x=16,y=28138. 下面程序段中正確的語句是()class aa int i; public: void aa(int); 第 16 頁共 31 頁 void aa(); void aa(int x)i=x; ; a. int i; b.void aa(int); c.void aa(int); d.void aa(int x) i=x; 說明:構(gòu)造函數(shù)和析構(gòu)函數(shù)不允許有參數(shù)和返回值,void 也不行。139設(shè) int a=4,b=8;則+a*b 的結(jié)果是() a33 b40 c32 d41 140. 有以下定義,則此數(shù)組的元素中不正確的一個(gè)賦值結(jié)果是() 。 st
41、atic int a10=1,2,3,4,5; a. a10=2 b. a0=1 c. a3=4 d.a7=0 141. 執(zhí)行語句for(i=1;i+ 5的相反表達(dá)式為 x+y=5 。2 數(shù)學(xué)算式242bbaca的 c+ 表達(dá)式為 (b+sqrt(b*b-4*a*c)/(2*a)。3 已 知 語 句couts;的 輸 出 是 “apple ” , 則 執(zhí) 行 語 句 “cout=i & b=i); return p*a*b; 。10若 x = 5, y = 10, 則計(jì)算 y*=+x 表達(dá)式后, x + y的值是 60 。11. 生存期與存儲(chǔ)區(qū)域關(guān)系密切,一般存儲(chǔ)區(qū)域分為代碼區(qū)(cod
42、e area ). 數(shù)據(jù)區(qū)( data area).棧區(qū)( stack area)和堆區(qū)( heap area ) 。代碼區(qū)用來存放【1】 。與其它存儲(chǔ)區(qū)相對應(yīng)的生存期分別為【2】. 【3】. 【4】 。 (靜態(tài)生存期. 局部生存期 . 動(dòng)態(tài)生存期)12. 面向?qū)ο蟪绦蛟O(shè)計(jì)的特點(diǎn)是【 5】 .【6】 .【7】和多態(tài)性。抽象性 . 封裝性 . 繼承性13 (3*3+2.5*4)/2, 則表達(dá)式的值是 9.5。14若 a 是一個(gè)字符數(shù)組,則cina 表示從鍵盤上讀一個(gè)【9】到數(shù)組 a 中。 字符串15面向?qū)ο蟮哪P椭?,最基本的概念是對象和?10】。類16. 可以賦給指針的唯一整數(shù)是【11】 。n
43、ull17. c+ 語言中的函數(shù)分為三種。一是主函數(shù)main() ,二是系統(tǒng)提供的【12】 ,又稱庫函數(shù) ,三是用戶【13】 。自定義函數(shù)18. 設(shè) a=3,b=4,c=5,(a*=!a)&(b+=c)|(c+);則 a= 0 ,b= 4 ,c= 6 19. 若 a 是 int型變量,則計(jì)算表達(dá)式a=25/3%3 后 a 的值是【 17】 。 220. 設(shè) x,y,z均為 int型變量,且x=3,y=-4,z=5,請?jiān)谙旅鎸?yīng)的【】中寫出表達(dá)式的值。( x&y)= =(x|z) 1 !(xy)+(y!=z)|(x+y)&(y-z) 1 x+ -y+(+z) 1321.
44、在 c+中函數(shù)參數(shù)傳遞方式有值傳遞和地址傳遞 .引用傳遞。22.c+語言的標(biāo)識符只能由_字母 _._ 數(shù)字 _和_下劃線 _三種字符組成,且打頭字符不能是_數(shù)字 _。23 c+ 程序的目標(biāo)文件的擴(kuò)展名是.obj。24在 c+程序中,使用輸入輸出流需要包含的頭文件是iostream.h。第 20 頁共 31 頁25當(dāng)執(zhí)行 cin 時(shí),從鍵盤上輸入每個(gè)數(shù)據(jù)后必須輸入一個(gè)空格 ,然后才可以接著輸入下一個(gè)數(shù)據(jù)。26轉(zhuǎn)義字符序列中的首字符是 字符。27空字 符串在內(nèi)存中的存儲(chǔ)空間是 1 個(gè)字節(jié)。28. 以/* 開始 ,*/ 結(jié)束,在 /* 和*/ 之間的部分即為注釋 。29.c+語言的基本數(shù)據(jù)類型有in
45、t .float.double.char.bool五種。30功能:將若干個(gè)數(shù)按從小到大順序排序。#include using namespace std; void main() int i,j; double temp; double a11; cout輸入需排序的10 個(gè)數(shù): endl; for(i=1;iai; for(i=1;i=9;i+) for( 1 ) if( 2 ) temp=ai; 3 ; cout排序后的10 個(gè)數(shù)為: endl; for(j=1;j=10;j+) coutaj ; coutendl; (1) j=i+1; jaj (3) ai=aj;aj=temp 31.
46、 聲明類的成員為私有類型的關(guān)鍵字是 private。32對象通過成員運(yùn)算符只能調(diào)用類的公有 (public )成員。33通過類定義對象時(shí),對象會(huì)自動(dòng)調(diào)用類的構(gòu)造函數(shù)。34對象消亡時(shí),類的析構(gòu)函數(shù)會(huì)被自動(dòng)調(diào)用。35在類 a的基礎(chǔ)上,通過增加成員可以產(chǎn)生新的類b。由類 a產(chǎn)生類 b的過程稱為派生,此時(shí)通過稱類a為了基類 ,類 b為派生類。36繼承方式關(guān)鍵字為private時(shí),基類的公有成員在派生類中是私有成員。37 下列程序是用遞歸的方法計(jì)算fun(5)*10的值。其中 fun(k)=fun(k-1)*k, 當(dāng) k=0 時(shí),fun(0)=3 。請?zhí)羁胀瓿沙绦颉?#include void main
47、() 【1】int fun(int);coutfun(5)*10endl; int fun( 【2】 ) int k 第 21 頁共 31 頁if(k=0) 【3】3 else return fun(k-1)*k; 38 設(shè) a 的初值為3,則表達(dá)式 (int)(a+6.5)%2+(a=b=5) 的值是6 。四. 閱讀程序,寫出程序運(yùn)行結(jié)果。 (每題 5 分,共 25 分)1.#include void main() int m,n=4,k; long int t,s=0; for(m=1;m=n;m+) for(t=1,k=1;k=m;k+) t*=m; s+=t; cout”s=”s; 寫
48、出該程序求解的表達(dá)式(3 分)及結(jié)果( 2 分) 。 288 2.以下程序的執(zhí)行結(jié)果是:#include void fun(int *s,int n1,int n2) int i,j,t; i=n1; j=n2; while (ij) t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; i+; j-; void main() int a10=1,2,3,4,5,6,7,8,9,0,i,*p=a; fun(p,0,3); fun(p,4,9); fun(p,0,9); for(i=0;i10;i+) cout*(a+i); 第 22 頁共 31 頁coutendl; 5 6 7
49、 8 9 0 1 2 3 43.有如下程序#include using namespace std; void main() int x=20; int &y=x; cout(x=y) ” “; cout(&x=&y)endl; 1 1 4.#include int count(double *a) double *p=a; while (*p!=0) p+; return (p-a); void main() double a=1.0,2.0,8.0,3.0,0.0,4.0,7.0; coutcount(a); 4 5.#include class a private
50、: int a,b; public: a() a=b=0; cout”con1 called.n”; a(int m) 第 23 頁共 31 頁 a=b=m; cout”con2 called.n”; a(int m,int n) a=m;b=n; cout”con3 called.n”; void print() cout”a=”a”b=”bendl; ; void main() a a1,a2(10),a3(10,20); a1.print(); a2.print(); a3.print(); con1 called. con2 called. con3 called. a=0 b=0 a
51、=10 b=10 a=10 b=20 6 寫出下列程序的結(jié)果 #define m 1.5 #define a(a) m*a void main() int x=5,y=6; couta(x+y)endl; 13.5 7. 寫出以下程序的運(yùn)行結(jié)果。第 24 頁共 31 頁#include void main() char a=”abcdabcabfgacd ”; int i1=0,i2=0,i=0; while(ai) if (ai=a) i1+; if (ai=b) i2+; i+; cout i1 i2 endl; 4 3 8寫出以下程序的功能。#include template t min
52、(t a,int n) int i; t v = a0; for(i=1;i ai) v = ai; return v; 求數(shù)組中最小元素函數(shù)9. 以下程序的輸出結(jié)果是()14 #include int a=1; int f() 第 25 頁共 31 頁 static int i=0; a+=i; i+; return a; void main() int i,s=0; for(i=0;i4;i+) s+=f(); couts; 10. 有下列程序:#include int func(char s) int length=0; while (*(s+length) length+; retur
53、n length; void main() char a10,*ptr=a; cinptr; coutfunc(ptr)endl; 如果輸入字符串hello !并回車,則輸出結(jié)果是( 6 ) 。11. 以下程序的輸出結(jié)果是() #include class teample int a,b; public: teample(int x,int y) a=x;b=y; void disp() couta=a,b=bendl; ; void main() teample s(1,2); s.disp(); a=1,b=2 12. 有以下程序執(zhí)行后結(jié)果是(2041 2044)struct stu 第
54、26 頁共 31 頁 char name10; int num; ; void f1(struct stu c) struct stu b=lisiguo,2042; c=b; void f2(struct stu *c) struct stu b=sundan,2044; *c=b; main( ) struct stu a=yangsan,2041,b=wangyin,2043; f1(a) ;f2(&b) ; couta.num,b.num; 13#include void main() int a4,i,j,k; for(i=0;i4;i+) ai=1; k=3; for(i=
55、0;ik;i+) for(j=0;jk;j+) aj=ai+2; couta1 a3endl; 結(jié)果: 11 1 14#include #include using namespace std; void main() int s33,i,j,k; for(i=0;i3;i+) for(j=0;j3;j+) sij=i-j; for(i=0;i2;i+) for(j=i+1;j3;j+) k=sij;sij=sji;sji=k; 第 27 頁共 31 頁 for(i=0;i3;i+) for(j=0;j3;j+) coutsetw(4)sij; coutendl; 0 1 2 -1 0 1 -
56、2 -1 0 15#include #include using namespace std; void main() int a23,j,k; for(k=0;k3;k+) for(j=0;j2;j+) ajk=(j+1)*(k+1); for(j=0;j2;j+) for(k=0;k3;k+) cout*ajk; coutendl; *1*2*3 *4*5*6 16. 比較難#include using namespace std; void main() int a10,i,j,pos=1; for(i=0;iai; for(i=1;i10;i+) for(j=0; ji; j+) /*后一個(gè)數(shù)與前幾個(gè)數(shù)比較 */ if (ai=aj) break; if ( i=j ) apos=ai;pos+; /*po
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代城市住宅區(qū)規(guī)劃中的教育資源配置
- 現(xiàn)代學(xué)校管理與教學(xué)質(zhì)量的提升策略
- 構(gòu)建高效且富有成效的商業(yè)計(jì)劃書結(jié)構(gòu)
- 物流行業(yè)信息化管理的突破與案例
- 未來電影產(chǎn)業(yè)的商業(yè)模式與市場策略
- 未來城市的邊緣空間新型房車營地的發(fā)展方向
- 國家開放大學(xué)??啤掇k公室管理》期末紙質(zhì)考試總題庫2025春期版
- 電商物流中的綠色包裝技術(shù)應(yīng)用
- 電子商務(wù)物流與配送策略優(yōu)化
- 電商物流與供應(yīng)鏈管理技巧分享
- 自動(dòng)化儀表工程施工及質(zhì)量驗(yàn)收規(guī)范
- 邵陽市職工勞動(dòng)能力鑒定表
- 胎膜早破的護(hù)理PPT
- GB/T 308.1-2013滾動(dòng)軸承球第1部分:鋼球
- 新員工入場安全教育培訓(xùn)課件
- 優(yōu)秀員工榮譽(yù)證書模板
- 2023機(jī)械工程師考試試題及答案
- 精選裝飾工程室內(nèi)拆除專項(xiàng)施工方案
- 2022年二年級生命安全教育教案
- 豐田汽車戰(zhàn)略規(guī)劃與戰(zhàn)略管理體系研究(2021)
- 公共政策學(xué)(第三版)-課件
評論
0/150
提交評論