石油大學(xué)-C語言-在線考試附答案_第1頁
石油大學(xué)-C語言-在線考試附答案_第2頁
石油大學(xué)-C語言-在線考試附答案_第3頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C 語言?綜合復(fù)習(xí)資料一、單項選擇題1. C 語言中根本數(shù)據(jù)類型有()A整型、實型、邏輯型B整型、字符型、邏輯型C整型、實型、字符型D整型、實型、字符型、邏輯型2. 在 C 語言中,數(shù)字 029 是一個 ()A八進制數(shù)B丨十進制數(shù)C十六進制數(shù)D非法數(shù)3. 在以下關(guān)于 C 語言的不嚴格的表達中,錯誤的說法是 ( )A在標(biāo)識符中,大寫字母和小些字母的意義相同B有些不同類型的變量可以在一個表達式中運算C在賦值表達式中等號“左邊的變量和右邊的值可以是不同類型D同一個運算符號在不同的場合可以有不同的含義4. int a=4,b=5; , 這執(zhí)行表達式 a=ab 后,變量 a 的值為 ()A0B 1 C4

2、D55. 設(shè)有定義 int a=3,b=4,c=5; , 那么以下表達式中,值為 0 的表達式是 ()D !(ab)&!c|1)A a&bB a0;12. 已定義 c 為字符型變量,那么以下正確的賦值語句是 ()A c=66;B c=66;C c=B;D c=66;13. 設(shè) a=3,b=4,c=-5 ,那么邏輯表達式: a | b+c& b=c 的值是 ()A1B0 C非0 D語法錯1 4.以下能正確定義數(shù)組并正確賦初值的語句是 ()A int N=5,bNN;B int a12=1,3;C int c2= 1,2,3,4;D int d32=1,2,34;15. 結(jié)構(gòu)化程序設(shè)計的三種根本結(jié)

3、構(gòu)是 ( )A順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)B if、 switch 、 breakC for 、 while 、 do-whileD if、 for 、 continue16. 在一個 C 程序中 ()A main 函數(shù)必須出現(xiàn)在所有函數(shù)之前main 函數(shù)可以在任何地方出現(xiàn)C main 函數(shù)必須出現(xiàn)在所有函數(shù)之后Dmain 函數(shù)必須出現(xiàn)在固定位置17. 以下合法的字符常量是 ()A 084B abC x43D018. 用 8 位無符號二進制數(shù)能表示的最大十進制數(shù)為A 127B 128C 255D 25619. 設(shè)有定義: intA 1,1,1x=0 ,y=1 , z=1 ;那么運行表達式:B

4、1,2,0C0,1,1x=y+z-D后, x,y,z 的值分別是 ()0,2,020.設(shè)有int x=11;那么表達式(x+*1 /3)的值是(A3C 11D1221. 假設(shè)有 : int x=1,n=5;那么執(zhí)行語句 x%=(n%2)后, x的值為(DA322. 結(jié)構(gòu)化程序的 3 種根本控制結(jié)構(gòu)是 ()A) if-else 結(jié)構(gòu)、 while 結(jié)構(gòu)、 for 結(jié)構(gòu)C) while 結(jié)構(gòu)、 do-while 結(jié)構(gòu)、 for 結(jié)構(gòu)23. 下面程序段的輸出結(jié)果是 ()順序結(jié)構(gòu)、B)D) 以上三種都不對分支機構(gòu)、循環(huán)結(jié)構(gòu)int k=11;printf( “%d,%o,%x,k,k,k);A 11,1

5、2,11B 11,13,13C 11,013,0xbD 11,13,b24. 在微型電腦系統(tǒng)中,存儲一個漢字的國標(biāo)碼所需要的字節(jié)數(shù)是()A) 1B) 2C) 3D) 425. 以下非法的賦值語句是( )A) n=(i=2,+i);B) j+;C) +(i+1);D) x=j0;26. 語句: printf(%d,(a=2)&(b=-2);的輸出結(jié)果是 ()A無輸出B結(jié)果不確定C 1D 227. 設(shè)有定義語句: charstr20=Hello,Beijing,*p=str; ()那么 printf(%dn,strlen(p+20); 輸出結(jié)果是A 0 B 5 C 7 D 2028. 以下選項中,

6、與 k=+n 完全等價的表達式是 ()A) k=n,n=n+1 B) n=n+1,k=n C) k=+n D) k+=n+1二、讀程序,寫出程序執(zhí)行結(jié)果1. #include void main() int a=10,b=0;if(a=12)a+; b+; else a=a+3 ; b=b+3;printf( “ %d,%nd ,a,b);2. #include void main() ints,i;for(s=0,i=1;i5;i+,s+=i) ; printf( “ %nd ,s);3. #include “ stdio.h void main() char n= c ;switch(n+

7、) default: printf( “ error! ); break;casea: case Acase b: case B: printf( “ good! );break;casec: case C: printf(“ pass! );cased: case D: printf(“ warm! );4. #include void main() int k=4,n=0;for( ; nk ; ) n+;if(n%3!=0) continue; k- -; printf(%d,%dn,k,n);5. #include int f(int b,intm,int n) inti,s=0; f

8、or(i=m;i=n;i+=2) s+=bi; return s;void main() intx,a=1,2,3,4,5,6,7,8,9,10; x=f(a,3,8);printf( “ %nd ,x);6. #include voidcopy_str(char from ,char to ) int k=0 ; while(fromk!= 0) tok=fromk ; k+ ; tok= 0;/*末尾加上串結(jié)束標(biāo)志 */void main() char str180= red ,str280= ;green copy_str (str1,str2) ;puts(str2) ;7. #inc

9、lude int d=1;void fun(int p) int d=5; d+=p+;printf( “%d ,d);void main() int a=3;fun(a); d+=a+; printf(%dn, d);8 #include void main() int i,j ; for(i=0 ; i3; i+)for(j=0 ; j=i ;j+) printf(*) ;printf(n) ;9. #include void main() inti;for (i=0; i3; i+) switch (i) case 1: printf(%d , i); case 2: printf(%d

10、 , i); default :printf(%d , i);10 #include intws(int x) if(x/1000) return(3) ;else if(x/100 ) return(2) ;elsereturn(1) ;void main() int a=123 ; printf(%d 是 %d 位數(shù) n,a,ws(a) ; 11. #include #include void main() char a10=abc ; char b=defg ;puts(a) ;puts(b) ;puts(strcat(a,b) ;12. #include void main() int

11、 i,n=1,2,3,4,5 ;for(i=0 ;i2 ;i+) ni=n4-i+1 ;printf(%d ,ni) ;for(i=0 ;i5 ; i+)printf(%d ,ni) ;13. #include void main() int a34=1,2,3,4,9,7,10,6,-1,8,-5,5;int i,j,row=0,colum=0,max;max=a00;for(i=0;i=2;i+)for(j=0;jmax) max=aij;row=i;colum=j;printf(max=%d,row=%d,colum=%d,max,row,colum); 14. #include voi

12、dcopy_str(charfrom ,char to ) int k=0 ;while(fromk!= 0) tok=fromk ; k+ ;tok= 0; /* 末尾加上串結(jié)束標(biāo)志 */void main() char str180= good,str280= abcdef copy_str(str1,str2) ; puts(str2) ;15. #include void main() int a=0;a+=(a=8);printf( “ %nd ,a);16. #include void main() int x=4; if(x+=5)printf( “ n%d , x) ;else

13、printf( “ %nd , -x-) ;17. #include #define MAX(a,b)(ab ? a : b)+1void main() int i=6,j=8; printf( “ %nd ,MAX(i,j);18 #include void main() int i,j,m=0,n=0,k=0;for(i=6; i=9;i+) for(j=2; j=3;j+) switch(i%j ) case 0: m+; break;case 1: n+; break; case 2: k+; break; default: k+;n+;m+; printf(%d %d %dn,m,n

14、,k);19. #include void main() inti; for(i=1;i5;i+) if(i%2)putchar( );putchar( # );20 #include void main() int i,n=1,2,3,4,5 ; for(i=0 ;i2 ;i+) ni=n4-i+1 ; printf(%d ,ni) ;for(i=0 ;i5 ; i+) printf(%d ,ni) ;21. #include int m=13;int fun(int x,int y) int m=3;return(x*y-m);void main() int a=7, b=5;printf

15、(%dn, fun(a,b)/m);22. #include void main() int n=2;printf( “ %d,%d,%nd , +n , n+=2 , -n) ; 23. #include void main() int x=1,a=0,b=0;switch(x) case 0: b+;case 1: a+;case 2: a+;b+;printf( “ a=%d,b=%nd ,a,b);24. #include void main() ints,t,a=-2,b=6;s=t=1;if(a0) s=s+1;if(ab) t=s+t;else if(a=b) t=5;else

16、t=2*s;printf(t=%d , t);25. #include #define S(a,b) (a)*(b) void main() int a=3 ,area ;area=S(a,a+3) ; printf(area=%dn,area) ; 26. #include void main() inti=0,a=0;while(i20 ) for(;)if(i%10)=0) break;elsei-;i+=11;a+=i;prin tf(%dn,a);27. #in elude void mai n() int aa44=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6;

17、in ti,s=0 ;for(i=0;i4;i+) s+=aai2; printf( “ %d ,s);28. #i nclude fun (i nt a, int b) if(ab) return(a);else return(b);void mai n() int x=3, y=8, z=6, r; r=fun(fun(x,y), 2*z); prin tf(%dn, r);三、編程題1.設(shè)有分段函數(shù):x2x-13x-11(x 1)寫一程序,輸入 x,輸出y的值。(1 10)2 編程任意輸入兩個實數(shù)a和b,計算下面函數(shù)的值,并輸出y值。y=a*bababa=bx 3x 01 x20x12x

18、 xx 14.寫一個判斷素數(shù)的函數(shù)。要求在主函數(shù)中輸入一個整數(shù)并輸出相應(yīng)的判斷信息。5編程序計算 s=1 ! -2 ! +3 ! -4! +-10 !,并輸出結(jié)果。6編寫一個函數(shù),將一個字符串最多 80個字符中的大寫字母變?yōu)樾懽帜?,小寫字?變?yōu)榇髮懽帜?。要求字符串的輸入與輸出在主函數(shù)中完成。7編程計算:s=1+12+123+1234+12345+123456必須用循環(huán)控制語句實現(xiàn)8編寫函數(shù)change使輸入的字符串按反序存放,在主函數(shù)中輸入和輸出字符串。例如輸入是:12345abcde,那么輸出為:edcba543219編程,在NXN矩陣中即N行N列的數(shù)組,求主對角線和次對角線上的各元素之

19、和。10.10個評委給出某選手打分,編程實現(xiàn)去掉一個最高分和一個最低分,求最后得分平均分?C語言?綜合復(fù)習(xí)資料參考答案單項選擇題題號12345678910答案CDAADDDDDC題號11121314151617181920答案CDACABCCDA題號2122232425262728答案DBCBCCCB、讀程序?qū)懗龀绦驁?zhí)行結(jié)果題1、13,32、143、pass!warm!4、3,35、186、red7、848、9、01112210、123是3位數(shù)11、abcdefgabcdefg12、656534513、max=10,row=1,colum=214、good15、1616、517、918、4 3

20、 119、#20、656534521、222、4,3,123、a=2,b=124、t=225、area=1826、3227、2928、12三、編程題1.設(shè)有分段函數(shù):x2x-13x-11(x 1)(1 10)寫一程序,輸入 x,輸出y的值。#in elude void mai n()in tx,y;printf(輸入 x: );scanf( “ d,&x);if(x1)y=x;printf(“x=%3d,y=x=%raT ,x,y);else if(xbaabba*ba=b#i nclude void mai n()floata,b,y;scanf( “ f,%f,&a,&b);if(ab)y

21、=a/b;elseif(a=b)y=a*b;else y=a-b;printf( “ y=%f ,y);3.編程序求如下分段函數(shù)的值x3x0y 1 x 0x1 2x xx1#in clude#in cludevoid mai n()floatx,y;scanf( “ %d,&x);if(x=0)y=fabs(x)+3;else if(x=0)y=1+x*x;elsey=2*x+sqrt(x);printf(“x=%f,y=%f ,x,y); 4.寫一個判斷素數(shù)的函數(shù)。要求在主函數(shù)中輸入一個整數(shù)并輸出相應(yīng)的判斷信息。#include void main()intn,i;printf( “ ple

22、ase enter a integer number,n=?);scanf( “ %d ,&n);for(i=2;i=n-1;i+) if(n%i=0)break;if(in) printf( “%d is not a prime numbner.,n);elseprintf(“%d is a prime numbern.,n); 求素數(shù)的問題方法有很多,同學(xué)們可以到教材或網(wǎng)絡(luò)上進行查找學(xué)習(xí)。5編程序計算 s=1 ! -2 ! +3 ! -4! +-10 !,并輸出結(jié)果。#include void main()inti,k=1,njie=1;float sum=0; for(i=1;i=10;

23、i+)njie=njie*i; sum=sum+njie*k;k=-1*k;printf(%fn,sum);6編寫一個函數(shù),將一個字符串最多 80個字符中的大寫字母變?yōu)樾懽帜?,小寫字?變?yōu)榇髮懽帜?。要求字符串的輸入與輸出在主函數(shù)中完成。#i nclude void main()inti;char a80;gets(a);puts(a);for(i=0;i=65&ai=90)ai=ai+32;puts(a);7. 編程計算: s=1+12+123+1234+12345+123456 必須用循環(huán)控制語句實現(xiàn) #include void main()longint t=0,s=0,i;for(i=1;i

溫馨提示

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

評論

0/150

提交評論