武漢大學C語言期末復習_試題_第1頁
武漢大學C語言期末復習_試題_第2頁
武漢大學C語言期末復習_試題_第3頁
武漢大學C語言期末復習_試題_第4頁
武漢大學C語言期末復習_試題_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1試卷共試卷共5個大題個大題單項選擇題題單項選擇題題(每題每題1分,共分,共20分)分) 填空題填空題(20分,每題分,每題2分分) 閱讀程序閱讀程序(20分,每題分,每題4分分) 完成程序題完成程序題(20分,每空分,每空2分分) 程序編制題:程序編制題:(20分,每題分,每題10分分)2 21、下列語句中符合、下列語句中符合C語言語法的賦值語句是語言語法的賦值語句是 A) a=7+b+c=a+7; B) a=7+b+=a+7; C) a=7+b,b+,a+7 D) a=7+b,c=a+7; 2、在、在C語言中語言中,要求運算數必須是整型的運算符是要求運算數必須是整型的運算符是 A) % B

2、) / C) D) !練練 習習3、已知字母、已知字母A的的ASC碼為十進制的碼為十進制的65,下面程序的輸出是下面程序的輸出是 main() char ch1,ch2; ch1=A+5-3; ch2=A+6-3; printf(%d,%cn,ch1,ch2); A) 67,D B) B,C C) C,D D) 不確定的值不確定的值34、下面程序的輸出是、下面程序的輸出是 main() int x=10,y=3; printf(%dn,y=x/y); A) 0 B) 1 C) 3 D) 不確定的值不確定的值5、 若執(zhí)行下面的程序時從鍵盤上輸入若執(zhí)行下面的程序時從鍵盤上輸入13和和14,則輸出是

3、則輸出是 main() int a,b; scanf(“%d%d”,&a,&b); if(ab) printf(“%dn”, a+); else printf(%dn, b-); A) 12 B) 13 C) 14 D) 15 6、下面程序的輸出是、下面程序的輸出是 main() int a10= 1,2,3,4,5,6,7,8,9,10,*p=a; printf(%dn,*(p+2); A) 3 B) 4 C) 1 D) 247、下面程序的輸出是、下面程序的輸出是 main() enum team my,your=4,his,her=his+10; printf(%d%d%d

4、%dn,my,your,his,her); A) 0 1 2 3 B) 0 4 0 10 C) 0 4 5 15 D) 1 4 5 158、下面程序的輸出是、下面程序的輸出是 main() int a=-1,b=4,k; k=(a+=0)&(!(b-0;y-) if(y%3=0) printf(%d,-y); continue; A)741 B)852 C)963 D)875421613. 下面程序的輸出是下面程序的輸出是 main() char x=040; printf(%dn,x=x1): A)100 B)160 C)120 D)6414. 下面程序的輸出是下面程序的輸出是 ma

5、in() struct cmplx int x; inf y;cnum2=1,3,2,7; printf(%dn,cnum0.y/cnum0.x*cnum1.x); A)0 B)1 C)3 D)615. 下面程序的輸出是下面程序的輸出是 fun3(int x) static int a=3; a+=x; return(a); main() int k=2,m=1,n; n=fun3(k); n=fun3(m); printf(%dn,n); A)3 B)4 C)6 D)9716. 下面程序的輸出是下面程序的輸出是 main() int a34=1,3,5,7,9,11,13,15,17,19,

6、21,23; int(*P)4=a,i,j,k=0; for(i=0;i3;i+) for(j=0;j2;j+) k=k+*(*(p+i)+j); printf(%dn,k); A)60 B)68 C)99 D)10817.該程序有兩個該程序有兩個printf 語句語句, 如果第一個如果第一個printf 語句輸出的是語句輸出的是194, 則第二則第二個個printf語句的輸出結果是語句的輸出結果是: main() int a10=1,2,3,4,5,6,7,8,9,0,*p; p=a; printf(%xn,p); printf(%xn,p+9); A)203 B)204 C)1a4 D)1

7、a6818. 以下說法中正確的是以下說法中正確的是 A)C語言程序總是從第一個的函數開始執(zhí)行語言程序總是從第一個的函數開始執(zhí)行 B)在在C語言程序中語言程序中,要調用的函數必須在要調用的函數必須在main()函數中定義函數中定義 C)C語言程序總是從語言程序總是從main()函數開始執(zhí)行函數開始執(zhí)行 D)C語言程序中的語言程序中的main()函數必須放在程序的開始部分函數必須放在程序的開始部分19.執(zhí)行下面的程序后執(zhí)行下面的程序后, a的值為的值為 main() int a,b; for (a=1,b=1;a=20) break; if(b%3=1) b+=3; continue; b-=5;

8、 A)7 B)8 C)9 D)10920.以下程序段的輸出結果是以下程序段的輸出結果是 int x=3; do printf(%3d,x-=2); while(!(-x); A)1 B)3 0 C)1-2 D)死循環(huán)死循環(huán)21. 設有以下定義設有以下定義: int a43=1,2,3,4,5,6,7,8,9,10,11,12; int (*ptr)3=a,*p=a; 則下列能夠正確表示數組元素則下列能夠正確表示數組元素a12的表達式是的表達式是 A)*(*ptr+1)2) B)*(*(p+5) C)(*ptr+1)+2 D)*(*(ptr+1)+2)22.下列程序的輸出結果是下列程序的輸出結果

9、是 main( ) char *p1, *p2, str50=xyz; p1=abcd; p2=ABCD; strcpy(str+2, strcat(p1+2,p2+1); printf(%s, str); A)xyabcAB B)abcABz C)ABabcz D)xycdBCD1023. 執(zhí)行以下程序后執(zhí)行以下程序后, y的值是的值是 main ( ) int a=2,4,6,8,10, y=1, x, *p; p=&a1; for(x=0;x amax ) amax=x; if( ) amin=x; scanf(%f, &x); printf(namax=%fnamin=

10、%fn, amax, amin); x=0.0 x amin1125.不能把字符串不能把字符串:Hello!賦給數組賦給數組b的語句是的語句是 A)char b10=H,e,l,l,o,!; B)char b10;b=“Hello!”; C)char b10;strcpy(b,“Hello!”); D)char b10=“Hello!”;26.若有以下說明若有以下說明: int a12=1,2,3,4,5,6,7,8,9,10,11,12; char c=a,d, g; 則數值為則數值為4的表達式是的表達式是 A)ag-c B)a4 C)ad-c D)ad-c27.若有以下說明若有以下說明:

11、int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 則數值為則數值為6的表達式是的表達式是 A)*p+6 B)*(p+6) C)*p+=5 D)p+528.若有以下說明若有以下說明: int w34o=0,1,2,4,5,8; int(*p)4=w; 則數值為則數值為4的表達式是的表達式是 A)*w1+1 B)p+,*(p+1) C)w22 D)p111229.若程序中有下面的說明和定義若程序中有下面的說明和定義 struct abc int x;char y; struct abc s1,s2; 則會發(fā)生的情況是則會發(fā)生的情況是 A)編譯出錯編譯出錯 B)程序將順利編譯、連

12、接、執(zhí)行程序將順利編譯、連接、執(zhí)行 C)能順利通過編譯、連接、但不能執(zhí)行能順利通過編譯、連接、但不能執(zhí)行 D)能順利通過編譯能順利通過編譯但連接出錯但連接出錯30.下面程序輸出數組中的最大值下面程序輸出數組中的最大值,由由s指針指向該元素指針指向該元素.則在則在if語句中的判斷表語句中的判斷表達式應該是達式應該是 main() int a10=6,7,2,9,1,10,5,8,4,3,*p,*s; for(p=a, s=a; p-a*sa=1, b=21332.若有定義和語句若有定義和語句: char s10;s=“abcd”;printf(“%sn”,s); 則結果是則結果是:(以下以下u代

13、表空格代表空格) A)輸出輸出abcd B)輸出輸出a C)輸出輸出abcduuuuu D)編譯不通過編譯不通過33.若有以下定義和語句若有以下定義和語句: int u=010, v=0 x10, w=10; printf(“%d,%d,%dn,u,v,w); 則輸出結果是則輸出結果是: A)8,16,10 B)10,10,10 C)8,8,10 D)8,10,1034. 若有以下定義和語句若有以下定義和語句 char c1=b,c2=e; printf(“%d,%cn”,c2-c1,c2-a+ A); 則輸出結果是則輸出結果是: A)2,M B)3,E C)2,E D) 輸出結果不確定輸出結

14、果不確定35. 若若i, j已定義為已定義為int類型類型,則以下程序段中內循環(huán)體的總的執(zhí)行次數是則以下程序段中內循環(huán)體的總的執(zhí)行次數是 for (i=5;i;i-) for(j=0;j4;j+) . A)20 B)25 C)24 D)301436.若有以下定義和語句若有以下定義和語句: char *s1=“12345”,*s2=“1234”; printf(“%dn”,strlen(strcpy(s1,s2); 則輸出結果是則輸出結果是: A)4 B)5 C)9 D)1037.若有以下定義和語句若有以下定義和語句: int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 則不能

15、表示則不能表示a數組元素的表達式是數組元素的表達式是 A)*p B)a10 C)*a D)ap-a38.下面程序的輸出是下面程序的輸出是 main() char *s=121; int k=0, a=0, b=0; do k+; if(k%2=0) a=a+sk-0;continue; b=b+sk-0; a=a+sk-0; while (sk+1); printf(k=%d a=%d b=%dn,k,a,b); A)k=3 a=2 b=3 B)k=3 a=3 b=2 C)k=2 a=3 b=2 D)k=2 a=2 b=31539. 下面程序的輸出是下面程序的輸出是 main() unsign

16、ed a=32768; printf(“a=%dn”,a); A)a=32768 B)a=-32767 C)a=-32768 D)a=-140.若有以下定義若有以下定義: float x;int a,b; 則正確的則正確的switch 語句是語句是 A)switch(x) B)switch(x) case1.0:printf(*n); case1,2:printf(*n); case2.0:printf(*n); case3:printf(*n); C)switch (a+b) D)switch (a+b); case 1:printf(n); case 1:printf(.*n); case

17、 1+2:printf(*n); case 2:printf(*n); 1641.以下程序輸出的結果是以下程序輸出的結果是 main() char w10=ABCD,EFGH,IJKL,MNOP,K; for (k=1;k3;k+) printf(%sn,&wkk); A)ABCD B)ABCD C)FGH D)FGH FGH EFG JK KL KL IJ O M 42.若有以下的定義若有以下的定義: int a=1,2,3,4,5,6,7,88,9,10), *p=a; 則值為則值為3的表達式是的表達式是 A)p+=2, *(p+) B)p+=2,*+p C)p+=3, *p+ D

18、)p+=2,+*p43.假定所有變量均已正確說明假定所有變量均已正確說明,下列程序段運行后下列程序段運行后x的值是的值是 a=b=c=0;x=35; if(!a) x-; if(c)x+=3; else x+=4; A)34 B)36 C)37 D)381744.以下程序的輸出結果是以下程序的輸出結果是 subl(char a,char b) char c; c=a;a=b;b=c; sub2(char* a,char b) char c; c=*a;*a=b;b=c; sub3(char* a,char*b) char c; c=*a;*a=*b;*b=c; main() char a,b;

19、 a=A;b=B;sub3(&a,&b);putchar(a);putchar(b); a=A;b=B;sub2(&a,b);putchar(a);prtchar(b); a=A;b=B;sub1(a,b);putchar(a);putchar(b); A)BABBAB B)ABBBBA C)BABABA D)BAABBA45. 下列程序運行結果是下列程序運行結果是_。#include void main()static char schText = Language;char *s=&schText8; while (-s=&schText0) put

20、char (*s);putchar(n);egaugnaL1846. 下列程序運行結果是下列程序運行結果是_。#include char* search(char * p, int n) return pn;void main() char * weekDay7= “Sunday”“,Monday”, Tuesday“,Wednesday“, Thursday“, Friday“, Saturday; char * pch = search(weekDay, 4); printf(%sn, pch);Thursday1947. 下列程序運行結果是下列程序運行結果是_。#include void

21、 main() struct AddrList char name12;char tele18;AddrList MyAL = Zhang Wang, Li,printf(%s %sn, MyAL1.name, MyAL1.tele);Wang 138080543212048.下面程序的功能是打開文件下面程序的功能是打開文件D:test.txt,計算該文件中的字符數。,計算該文件中的字符數。請?zhí)羁胀晟浦?。請?zhí)羁胀晟浦?include void main()FILE * in;in = fopen( , r);ch

22、ar ch = fgetc(in);int nFileLength = 0;while ( ) ; ch = ;printf(nFileLength = %dn, nFileLength);“D:Test.txt”ch != EOFnFileLength+fgetc(in)2149下面程序的功能是用從鍵盤上輸入下面程序的功能是用從鍵盤上輸入3個數,比較得出個數,比較得出3個數中的最小個數中的最小 值、中間值、最大值。使用了交換函數值、中間值、最大值。使用了交換函數swap。請?zhí)羁胀晟浦U執(zhí)羁胀晟浦?include void swap(int *p1, int *p2) int hold =

23、 ;*p1 = *p2;*p2 = hold;void main()int max, min, mid;printf(Enter three numbers:);scanf(%d%d%d, &max, &mid, &min);if (max min) ; if ( ) swap(&max, &mid);if (mid min) swap(&mid, &min);printf(min=%d mid = %d max=%dn, min, mid, max); *p1swap( &max, &min)max mid2250. 下

24、面程序的功能是計算如下分數序列的前下面程序的功能是計算如下分數序列的前20項之和,請?zhí)羁?。項之和,請?zhí)羁铡?2/1, 3/2, 5/3, 8/5, 13/8,#include void main( ) int n, t; float x=2, y=1, s=0; for(n=1;n=20;n+) ; t=x; ; ; printf(“the sum is :%fn”, s); s+=x/yx=x+yy=t2351. 下列程序運行結果是下列程序運行結果是_。#include int* Search(int (*ptr)3, int n) return *(ptr+n);void main() int scores3= 60,70,80, 61,71,81, 62,72,82, 63,73,83;int *ptr = Search(scores,2);printf(%dn,*(ptr+2);822452. 完成一個C程序的

溫馨提示

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

最新文檔

評論

0/150

提交評論