??己囶}與答案_第1頁(yè)
??己囶}與答案_第2頁(yè)
??己囶}與答案_第3頁(yè)
模考含試題與答案_第4頁(yè)
??己囶}與答案_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2017C+??脊潭ㄔ囶}1解答一、單選題(總分:30.0,共30題)1. 設(shè)a和b為整型變量,執(zhí)行語(yǔ)句 b=(a=2+3,a*4),a+5; 后a和b的值為( D )。A.5,10 B.20,25 C.5,25 D.5,20 2. x為int型,s為float型,x=3,s=2.5。表達(dá)式s+x/2的值為( B )。A.4 D.3 3. 在以下選項(xiàng)中,與k=n+完全等價(jià)的表達(dá)式是( A )。A.k=n,+n; B.n=n+1,k=n; C.k=+n; D.k+=n+1; 4. 有定義: int a; double b; 則表達(dá)式a+4/b結(jié)果的數(shù)據(jù)類型為( B )。A.int B.double

2、 C.float D.unsigned5. 以下程序段的結(jié)果是( B )。int m=0, n=0; if (+m && +n ) cout << m << "," << n << endl;A.0,0 B.1,1 C.1,0 D.0,1 6. 有循環(huán)結(jié)構(gòu)程序段:for(i=1;i<10;i+)cout<<i<<endl;cout<<i;下列說法錯(cuò)誤的是( C )。A.循環(huán)體語(yǔ)句被執(zhí)行了9次; B.循環(huán)體只包含一個(gè)語(yǔ)句;C.第2個(gè)cout語(yǔ)句輸出i值為9; D.1,2,

3、3,4,5,6,7,8,9,10都被輸出。7. 若已有 int e; 則while(e) ;中的循環(huán)控制條件等價(jià)于:( B )。A.e= =0 B. e!=0 C. e= =1 D.e!=18. 下面( D )不是必須的c+源程序格式要求。A.語(yǔ)句以分號(hào)結(jié)束 B.編譯命令不要以分號(hào)結(jié)束C.函數(shù)體放在 內(nèi) D. 內(nèi)的語(yǔ)句向右縮幾個(gè)字符9. 設(shè)x、y、z、t 均為 int 變量,則執(zhí)行以下語(yǔ)句后,t的值為( C )。x=y=z=1; t=+x|+y&&+z; A.不定值 B.2 C.1 D.0 10. t為int類型,進(jìn)入下面的循環(huán)之前,t的值為0。對(duì)下面的語(yǔ)句:while ( t

4、=1 ) . 。則以下敘述中,正確的是( B )。A.循環(huán)控制表達(dá)式的值為0 B.循環(huán)控制表達(dá)式的值為1C.循環(huán)控制表達(dá)式不合法 D.其他說法都不對(duì)11. 在函數(shù)調(diào)用過程中,如果函數(shù)funA調(diào)用了函數(shù) funB,函數(shù)funB又調(diào)用了函數(shù)funA,則( B )。A.稱為函數(shù)的直接遞歸調(diào)用 B.稱為函數(shù)的間接遞歸調(diào)用C.稱為函數(shù)的循環(huán)調(diào)用 D.C+中不允許這樣的遞歸調(diào)用12. 一個(gè)函數(shù)的返回值是通過函數(shù)中的( A )語(yǔ)句獲得的。A.return B.exit C.break D.value13. 以下對(duì)C+語(yǔ)言函數(shù)的描述中,正確的是( A )A.C+程序由一個(gè)或一個(gè)以上的函數(shù)組成B.C+函數(shù)既可以

5、嵌套定義又可以遞歸調(diào)用C.函數(shù)必須有返回值,否則不能使用函數(shù)D.C+程序中調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)程序文件中14. 在什么情況下,可以不用對(duì)自定義函數(shù)進(jìn)行聲明就可以調(diào)用( A )。A.被調(diào)用的自定義函數(shù)出現(xiàn)在同一文件的主調(diào)函數(shù)之前B.主調(diào)函數(shù)在前,被調(diào)函數(shù)在后C.該被調(diào)用函數(shù)出現(xiàn)在main函數(shù)之前D.不存在這種情況15. 設(shè)有一自定義函數(shù)的函數(shù)頭形如:int f( int x, float y)。下列關(guān)于該函數(shù)的聲明語(yǔ)句中,錯(cuò)誤的是( A )。A.int f(int x, float y) B.int f(int, float); C.int f(int a, float b); D.

6、int f(int x, float z);16. 下列程序段的輸出結(jié)果是( A ):int add(int x=20,int y=10);void main( ) int a(30),b(50);cout<<add(a,10)<<endl;int add(int x,int y) return x+y; A.40 B.30 C.50 D.1017. 全局變量的定義不可能在( A ).A.函數(shù)內(nèi)部 B.函數(shù)外面 C.文件外面 D.最后一行18. 在int a 3=1,3,2,4,5,6,0中,a22的值是( C )。 A.3 B.2 C.6 D.4 19. 如有定義:i

7、nt a20; 則下面可以正確引用數(shù)組元素的表達(dá)式是( D )。A.a20 B.a3.5 C.a(5) D.a10-10 參考答案:D20. 在下列對(duì)字符數(shù)組進(jìn)行初始化的語(yǔ)句中( A )是正確的。A. char s1=”abcd”; B. char s23=”xyz”; C. char s3=a,x,y; D.char s423=“xyz”, ”mnp”;21. 有以下程序段:char a10="abcd" cout<<strlen(a)<<","<<sizeof(a)<<endl;則執(zhí)行后的輸出結(jié)果是(

8、B )。A.7,4 B.4,10 C.8,8 D.10,1022. 設(shè)有 int a10, *p=a ; 則下面哪種表示與a3等價(jià)( D )。A.*a+3 B.&a3 C.p=p+2, *p+ D.*(p+3)23. 有如下程序段:int *p, a=10, b=1; p=&a; a=*p+b; 執(zhí)行該程序段后,a的值是( B )。A.12 B.11 C.10 D.編譯出錯(cuò)24. 要使指針變量p指向一維數(shù)組a的第1個(gè)元素(下標(biāo)為0的元素),正確的賦值表達(dá)式是( B )。A.p=a或p=a0 B.p=a或p=&a0 C.p=&a或p=a0 D.p=&a或p

9、=&a025. 假定變量a和pa定義為 double a10, *pa=a; 要將60賦值給a中的下標(biāo)為5的元素,不正確的語(yǔ)句是( D )。A.pa5=60; B.*(pa+5)=60; C.a5=60; D.*(a0+5)=60;26. 函數(shù)的返回值的類型由( C )決定。A.調(diào)用該函數(shù)的主調(diào)函數(shù)類型 B.return語(yǔ)句中的表達(dá)式類型C.定義函數(shù)時(shí)所指定的返回值類型 D.調(diào)用函數(shù)時(shí)臨時(shí)決定27. 下列說法不正確的是( C )。A.for,while 和do-while循環(huán)體中的語(yǔ)句可以是空語(yǔ)句。B.使用 while 和do-while循環(huán)時(shí),循環(huán)變量初始化的操作應(yīng)在循環(huán)語(yǔ)句之前完成

10、。C.for和do-while循環(huán)都是先執(zhí)行循環(huán)體語(yǔ)句,后判斷循環(huán)條件表達(dá)式。D.while循環(huán)是先判斷循環(huán)條件表達(dá)式,后執(zhí)行循環(huán)體語(yǔ)句。28. 若i為整型變量,則以下循環(huán)的執(zhí)行次數(shù)是( A )。for(i=2;i=0;) cout<<i<<endl;A.0 B.1 C.2 D.無限次29. 執(zhí)行 if(x=y=2)>=x&&(x=5) y*=x; 語(yǔ)句后,變量 x、y 的值分別為( C )。A.2、4 B.5、2 C.5、10 D.執(zhí)行時(shí)報(bào)錯(cuò)30. 若有:int a,*p=&a; 則下面哪個(gè)表達(dá)式為假( A )。A.*p= =&a

11、 B.p= =&*p C.p= =&a D.*p= =a二、填空題(總分:25.0,共23題)1. C+中的數(shù)據(jù)有常量和變量之分。用一個(gè)標(biāo)識(shí)符代表一個(gè)常量,稱為_符號(hào)_常量。2.只有一個(gè)分號(hào)的語(yǔ)句叫_空語(yǔ)句_。3.三種基本的程序控制結(jié)構(gòu)是:順序結(jié)構(gòu),選擇結(jié)構(gòu)和_循環(huán)結(jié)構(gòu)_。4. break語(yǔ)句用于結(jié)束整個(gè)循環(huán),_continue_語(yǔ)句用于結(jié)束本次循環(huán)。5. Dowhile語(yǔ)句的循環(huán)體至少無條件執(zhí)行_一_次,而while循環(huán)體可能一次也不執(zhí)行。(注:請(qǐng)用漢字答題)6. 在函數(shù)體內(nèi)定義的局部變量,在函數(shù)返回時(shí)不會(huì)被撤銷,該變量是_靜態(tài)_變量。7. 定義函數(shù)時(shí),出現(xiàn)在函數(shù)名后面括號(hào)中

12、的變量名稱為_形參或形式參數(shù)_。8. 數(shù)組名就是數(shù)組的_起始_地址。9. 使用函數(shù)strcat(str1,str2)連接兩個(gè)字符串時(shí),連接的結(jié)果保存在字符數(shù)組_str1_中。10. 完成以下語(yǔ)句,使得當(dāng)x>10時(shí),y值為5,否則y值為-5:int x,y;if (x>10)y=5;else y=-5;11. 設(shè)有定義:char s="dta101bc" 則調(diào)用函數(shù)strlen(s)的值為:_6_。12. 完成以下語(yǔ)句,聲明函數(shù)max為內(nèi)置函數(shù):_inline_ int max(int x,int y);13. 完成以下語(yǔ)句,定義變量x為靜態(tài)整型變量:_stati

13、c_ int x;14. 有以下函數(shù)聲明:int fun(int a);已定義函數(shù)指針變量p,為了使p指向函數(shù)fun,則使用的賦值語(yǔ)句為: p=_fun_;15. 有以下函數(shù)定義:int f1(int a,int b) return a+b; 則執(zhí)行以下語(yǔ)句:int x=2,y=4,z=3;cout<<f1(x,y,x+y),z)<<endl;的輸出值是:_9_。16. 有數(shù)組定義:int a5=1,2,3,4,5;int b5=3,6,9,12,15; 表達(dá)式ba3的值為:_15_。17. 設(shè)有定義:int a33=1,2,3,4,5,6,7,8,9; 則值為6的元素

14、是:_a12_。18. 假設(shè)有以下語(yǔ)句: int a, x=5, y=6,*p=&x; a = *p;p=&y;則此時(shí)a的值為_5_。19. 有下面的程序段:char *s="abcde",*p;p=s+2; cout<<p<<endl;則運(yùn)行結(jié)果是_cde_。20. 設(shè)有以下定義的語(yǔ)句:int a32=10,20,30,40,50,60;int b32=10,20,30,40,50,60;則a11*b21=_2400_。21. 若有float型二維數(shù)組a34,則與數(shù)組元素的指針表示方式*(*(a+2)+3)等價(jià)的下標(biāo)表示方式表示為_

15、a23_。22. 完善下面的程序段,找出3行×4列矩陣A中第一個(gè)最大元素以及它的行號(hào)和列號(hào)。#define M 3#define N 4int main( ) int i,j,row,colum,max;int aMN;for(i=0;i<M;i+)for(j=0;j<N;j+)cin>>aij;max=_1_ ;row=0,colum=0;for(i=0;i<M;i+)for(j=0;j<N;j+)if (_2_ )max=aij;row=i;colum=j;cout<<"max="<<max<&

16、lt;",row="<<row<<",colum="<<colum<<endl;return 0;23. 已知費(fèi)氏(Fibonacci)數(shù)列通項(xiàng):F0F11 (i=0,1),FiFi-1+Fi-2 ( i>1)完善下面的程序段,用數(shù)組求Fibonacci數(shù)列前20項(xiàng)。int main( ) int i, f20;f0= f1=_1_;for(i=2;i<20;i+)fi=fi-1+_2_;cout<<"Fibonacci:"<<endl;for(i=0

17、;i<20;i+)cout<<fi<<" "cout<<endl;return 0;三、判斷題(總分:15.0,共15題)1.全局變量一定是靜態(tài)變量。正確2.符號(hào)常量定義為字符常量時(shí),不應(yīng)用雙引號(hào)包括該字符。正確3.若x為整型變量,j為實(shí)型變量,當(dāng)執(zhí)行x=(int)j;語(yǔ)句后,j也變?yōu)檎妥兞?。錯(cuò)誤4.while語(yǔ)句的循環(huán)體有可能一遍都不執(zhí)行,而do-while語(yǔ)句至少執(zhí)行一遍循環(huán)體. 正確5.條件運(yùn)算符的結(jié)合方向?yàn)閺淖蟮接摇ee(cuò)誤6.任何一個(gè)表達(dá)式加上一個(gè)分號(hào)就構(gòu)成一個(gè)語(yǔ)句。正確7.如果一個(gè)函數(shù)沒有形式參數(shù),調(diào)用該函數(shù)時(shí),可以省略括

18、號(hào)對(duì)( )。錯(cuò)誤 8.局部變量是指定義在函數(shù)或程序塊內(nèi)的變量。正確 9.凡未附加static關(guān)鍵字定義的局部變量都是自動(dòng)變量,存儲(chǔ)在動(dòng)態(tài)數(shù)據(jù)存儲(chǔ)區(qū)。正確10.關(guān)鍵字extern即可用于外部函數(shù)的定義,也可用于對(duì)外部函數(shù)的聲明。正確11.一個(gè)C+程序可以包含0個(gè)或多個(gè)自定義函數(shù)。正確12.對(duì)于一維數(shù)組a,a與&a0都表示數(shù)組中首元素的存儲(chǔ)地址,該地址稱為數(shù)組的首地址。正確13.同一數(shù)組的不同元素的數(shù)據(jù)類型可以不同。錯(cuò)誤14.不指向任何變量或函數(shù)的指針,可用NULL表示。正確15.在C+中,函數(shù)的指針就是函數(shù)的入口地址(或首條指令地址)。正確四、問答題(總分:20.0,共5題)1. (本題

19、分值:4.0) 若有下列函數(shù)及其相應(yīng)的調(diào)用語(yǔ)句(若有.,表示該題有省略語(yǔ)句,但不影響對(duì)該程序結(jié)果的判斷),則該程序的輸出結(jié)果是( result=15 )。參考答案:result=152. (本題分值:4.0) 若有下列函數(shù)及其相應(yīng)的調(diào)用語(yǔ)句(若有.,表示該題有省略語(yǔ)句,但不影響對(duì)該程序結(jié)果的判斷),則該程序的輸出結(jié)果是( a aa aaa )。參考答案:a aa aaa3. (本題分值:4.0) 請(qǐng)寫出下面程序運(yùn)行的結(jié)果。參考答案:15454. (本題分值:4.0) 如下程序運(yùn)行時(shí),輸出a4值是多少?參考答案:85. (本題分值:4.0) 請(qǐng)寫出下面程序運(yùn)行的結(jié)果。參考答案:5 3五、編程題(

20、總分:10.0,共1題)編寫一個(gè)自定義函數(shù):int f( char x, int N) ,f( )的功能是:對(duì)給定的字符c和整數(shù)N,用c代表的符號(hào)打印一個(gè)N行的圖案,每行開頭沒有任何空格。比如,當(dāng)c為"*"且N為5時(shí),打印的圖案如本題圖所示。且函數(shù)值返回1。#include <iostream>using namespace std;int f(char x, int N);int main( )f("*",5); /題目這里的實(shí)參"*"寫錯(cuò)了,字符常量應(yīng)該寫成'*'return 0;答案:紅色部分是打開題目時(shí)就

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論