C語言程序設(shè)計復(fù)習(xí)題庫_第1頁
C語言程序設(shè)計復(fù)習(xí)題庫_第2頁
C語言程序設(shè)計復(fù)習(xí)題庫_第3頁
C語言程序設(shè)計復(fù)習(xí)題庫_第4頁
C語言程序設(shè)計復(fù)習(xí)題庫_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、一、填空1. break語句通常用于 switch / 循環(huán) 中。2. C 語言對數(shù)組下標(biāo)的引用一般從 0 開始。3. C 語言中,一個函數(shù)一般由兩個部分組成,它們是 函數(shù)首部 和 函數(shù)體 。 4. C標(biāo)準(zhǔn)庫函數(shù)中,字符串的處理函數(shù)包含在 string.h 頭文件中,數(shù)學(xué)函數(shù)包含在 math.h頭文件中。5. C程序的運行需要經(jīng)過 編譯 和 鏈接 兩步進(jìn)行。6. C程序中用 /*/ 括起來的內(nèi)容是程序的注釋語句。7. C語言函數(shù)是由函數(shù)首部和函數(shù)體兩部分組成。其中,函數(shù)首部包括 函數(shù)類型 、 函數(shù)名 和 函數(shù)參數(shù) 。8. C語言提供的三種邏輯運算符是 &,/,! 。9. C語言源程序經(jīng)過編譯后

2、,生成文件的后綴名是 .c 。10. C語言源程序經(jīng)過連接后,生成文件的后綴名是 .exe 。11. C語言中,關(guān)系表達(dá)式和邏輯表達(dá)式的值是 1/0 。12. C語言中的標(biāo)識符只能由三種字符組成,他們是 字母,數(shù)字,下劃線 。13. C語言中的每條基本語句以 ; 作為結(jié)束符,每條復(fù)合語句以作為結(jié)束符。14. C語言中函數(shù)返回值的類型是由 函數(shù)類型 決定的。15. C源程序的基本單位是 函數(shù) 。16. int a = 2, b = 3; 表達(dá)式 a b ? a + : + b的值為 4 。17. int x=1,y=1,z=1; x+=y+=z; 則表達(dá)式xbc的值是 0 。19. 定義一個指針

3、p,它指向一個有6個整型元素的一維數(shù)組,定義語句為 int *p=a6 ; 。20. 定義一個指針數(shù)組p,它有4個元素,每個指針指向一個整型數(shù)據(jù),定義語句為 int *p4; 。 21. 賦值語句是由 = 加上一個分號構(gòu)成。22. 構(gòu)成數(shù)組的各個元素必須具有相同的 類型 。23. 關(guān)系表達(dá)式x+y5的相反表達(dá)式為 x+y!5 。24. 函數(shù)strlen(12340xy)的值為: 9 。25. 函數(shù)的形參在未被調(diào)用前不分配空間,函數(shù)形參的數(shù)據(jù)類型要和實參相同。26. 函數(shù)體用開始,用結(jié)束。 27. 結(jié)構(gòu)化設(shè)計中的三種基本結(jié)構(gòu)是 順序,選擇,循環(huán) 。28. 如果一個函數(shù)無返回值,定義它時函數(shù)類型應(yīng)

4、是 void 。29. 若x、y、z均為int型變量,則描述“x或y中有一個小于z”的表達(dá)式是 (x|y)=10 or a=0|a=10&a=10|a=A & ch=Z)?ch+32:ch的值是 BA) Z B) a C) z D) A31、表示關(guān)系X =Y =Z的C語言表達(dá)式為 AA. (X =Y)&(Y =Z) B. (X =Y)AND(Y =Z)C. (X =Y =Z) D. (X =Y)&(Y =Z)32、如果a=4,b=3,c=2,d=1, 則條件表達(dá)式ab?a:cd?c:d的值是 AA) 1 B) 2 C) 3 D) 433、語句printf(%d n,12&12);的輸出結(jié)果是

5、BA. 12 B. 1 C. 24 D. 0 34、若有條件表達(dá)式 (exp)?a+:b-,則以下表達(dá)式中能完全等價于表達(dá)式(exp)的是 B A. (exp=0) B. (exp!=0) C. (exp=1) D. (exp!=1) 35、若要求在if后一對圓括號中表示a不等于0的關(guān)系,則能正確表示這一關(guān)系的表達(dá)式 DA) a0 B) !a C) a=0 D) a36、設(shè)x 、y 、z 、t均為int型變量,則執(zhí)行以下語句后,t的值為 C x=y=z=1; t=+x | +y & +z;A) 不定值 B) 4 C) 1 D) 037、對表達(dá)式for( 表達(dá)式1; ;表達(dá)式3) 可理解為 BA

6、.)for(表達(dá)式1;0; 表達(dá)式3) B)for(表達(dá)式1;1; 表達(dá)式3)C)for(表達(dá)式1; 表達(dá)式1; 表達(dá)式3) D)for(表達(dá)式1; 表達(dá)式3; 表達(dá)式3)38、語句while(!e);中的條件 !e 等價于 AA) e=0 B) e!=1 C) e!=0 D) e39、下面程序段的運行結(jié)果是 D for(i=1;i=5;) printf(%d,i); i+;A) 12345 B) 1234 C) 15 D) 無限循環(huán)40、設(shè)執(zhí)行變量y值為3,執(zhí)行下列循環(huán)語句后,變量y的值是 C do y+; while(y+4); (A)3 (B)4 (C)5 (D)641、執(zhí)行語句:for

7、(i=1;i9; i+)后; 變量i的值是 B (A)10 (B)9 (C)不定 (D)11 42、執(zhí)行語句:for(i=1;i=9; i+);后變量i的值是 AA. 10 B. 9 C. 不定 D. 11 43、在定義一個一維數(shù)組時,不能用來表示數(shù)組長度的是 D A)常量 B)符號常量 C)常量表達(dá)式D)已被賦值的變量44、判斷字符串是否相等,應(yīng)當(dāng)使用 D (A)if(a=b) (B)if(a=b) (C)if(strcpy(a,b) (D)if(!strcmp(a,b)45、執(zhí)行程序段char str20=a,b,c,0; int len=strlen(str); 變量len的值 C A.

8、 20 B. 4 C. 3 D. 3或4或20 46、若有說明:char c10=E,a,s,t,0;,則下述說法中正確的是 DA) c7不可引用 B) c6可引用,但值不確定C) c4不可引用 D) c4可引用,其值為空字符47、運行下面程序段的輸出結(jié)果是 A char s110=S,e,t,0,u,p,0; printf(%s,s1);A) Set B) Setup C) Set up D) Set48、以下程序段的輸出結(jié)果是 B char s =an apple; printf(%dn,strlen(s);A) 7 B) 8 C) 9 D) 1049、下列一維數(shù)組初始化語句中,正確且與語

9、句float a =0,3,8,0,9;等價的是 DA) float a6=0,3,8,0,9; B) float a4=0,3,8,0,9;C) float a7=0,3,8,0,9; D) float a5=0,3,8,0,9;50、如有定義語句int a=1,8,2,8,3,8,4,8,5,8; ,則數(shù)組a的大小是 AA) 10 B) 11 C) 8 D) 不定51、若二維數(shù)組a有m列,則在aij前面的元素個數(shù)為 BA. j*m+i B. i*m+j C. i*m+j-1 D. i*m+j+1 52、在定義int a56;后,數(shù)組a中的第10個元素是 CA) a25 B) a24 C)

10、a13 D) a1553、以下二維數(shù)組 a 的正確說明是 C A) int a1,1; B) float a(3,4); C) double a14; D) float a(3)(4);54、在定義int a54; 之后,對a的引用正確的是 CA) a24 B) a1,3 C) a43 D) a5055、若有說明:int a34; 則對a數(shù)組元素的正確引用是 C(A)a24 (B)a1, 3 (C)a1+10 (D)a(2)(1) 56、以下對二維數(shù)組a 的正確說明是 CA. int a3 B. float a(3,4) C. double a14 D. float a(3)(4) 57、若有

11、定義:int b3;則數(shù)組元素的不合法引用是 D(A) b1 (B) b0 (C)b2 (D) b3 58、對以下說明語句 int a10=6,7,8,9,10; 的正確理解是 BA)將5個初值依次賦給a1 至a5 B)將5個初值依次賦給a0 至a4C)將5個初值依次賦給a6 至a10 D)因為數(shù)組長度與初值的個數(shù)不相同, 所以此語句不正確59、設(shè)已定義:int x24=1,2,3,4,5,6,7,8; 則元素x11的正確初值是 A A. 6 B. 5 C. 7D. 160、在int a 3=1,3,2,4,5,6,0中a11的值是 DA、0 B、6 C、5 D、 261、設(shè)已定義:int x

12、24=1,2,3,4,5,6,7,8; 則元素6對應(yīng)的是 A A. x11 B. x12 C. x21D. x2262、以下正確的函數(shù)定義形式是 AA.double fun(int x, int y)B.double fun(int x ;int y)C. double fun(int x, int y);D. double fun(int x,y);63、有如下函數(shù)調(diào)用語句 func(rec1,rec2+rec3,rec4,rec5);該函數(shù)調(diào)用語句中,含有的實參個數(shù)是 BA) 3 B) 4 C) 5 D) 有語法錯誤64、在C語言中,全局變量的存儲類別是 AA) static B) ext

13、ern C) void D) register65、在C語言中,以下說法中正確的是 AA. 實參與其對應(yīng)的形參各占用獨立的存儲單元B. 實參與其對應(yīng)的形參占用同一個存儲單元C. 只有當(dāng)實參與形參同名時才占用同一個存儲單元D. 實參占用存儲單元,但形參是虛擬的,不占用存儲單元66、C語言中,簡單變量做實參時,它和對應(yīng)的形參之間的數(shù)據(jù)傳遞方式是 B(A)地址傳遞 (B)單向值傳遞(C)由實參傳給形參,再由形參傳遞給實參(D)同用戶指定傳遞方式67、在一個源文件中定義的全局變量的作用域為 BA. 本文件的全部范圍 B. 從定義該變量開始至本文件結(jié)束C. 本函數(shù)的全部范圍 D. 本程序的全部范圍 68

14、、如果一個函數(shù)位于C程序文件的上部,在該函數(shù)體內(nèi)說明語句后的復(fù)合語句中定義了一個變量,則該變量 CA) 為全局變量,在本程序文件范圍內(nèi)有效B) 為局部變量,只在該函數(shù)內(nèi)有效C) 為局部變量,只在該復(fù)合語句中有效D) 定義無效,為非法變量69、調(diào)用函數(shù)時,當(dāng)實參和形參都是簡單變量時,它們之間數(shù)據(jù)傳遞的過程是 DA) 實參將其地址傳遞給形參,并釋放原先占用的存儲單元B) 實參將其地址傳遞給形參,調(diào)用結(jié)束時形參再將其地址回傳給實參C) 實參將其值傳遞給形參,調(diào)用結(jié)束時形參再將其值回傳給實參D) 實參將其值傳遞給形參,調(diào)用結(jié)束時形參并不將其值回傳給實參70、以下敘述中,不正確的是 BA) 在同一C程序

15、文件中,不同函數(shù)中可以使用同名變量B) 在main函數(shù)體內(nèi)定義的變量是全局變量C) 形參是局部變量,函數(shù)調(diào)用完成即失去意義D) 若同一文件中全局變量和局部變量同名,則全局變量在局部變量作用范圍內(nèi)不起作用71、對于C語言的函數(shù),下列敘述中正確的是 AA) 函數(shù)的定義不能嵌套,但函數(shù)調(diào)用可以嵌套B) 函數(shù)的定義可以嵌套,但函數(shù)調(diào)用不能嵌套C) 函數(shù)的定義和調(diào)用都不能嵌套D) 函數(shù)的定義和調(diào)用都可以嵌套72、數(shù)組定義為:int a45; 引用“a1+3”表示的是 A(A)a數(shù)組第2行第4列元素的地址 (B)a數(shù)組第2行第4列元素的值 (C)a數(shù)組第4行的首地址 (D)a數(shù)組第1行第3個元素的地址 7

16、3、若定義:int a=511,*b=&a; 則printf(%dn,*b);的輸出結(jié)果為 DA. 確定值 B) a的地址 C) 512 D) 51174、若有int a10=1,2,3,4,5,6,7,8,9,10;int *p=a;則值為9的表達(dá)式是 BA. *p+9 B. *(p+8) C. *p+=9 D. p+8 75、若有說明語句:int a,b,c,*d=&c;,則能正確從鍵盤讀入三個整數(shù)分別賦給變量a、b、c的語句是 A。A) scanf(%d%d%d,&a,&b,d); B) scanf(%d%d%d,&a,&b,&d);C) scanf(%d%d%d,a,b,d); D)

17、scanf(%d%d%d,a,b,*d);76、設(shè)有語句”int a=1,3,5,7,9,*p=&a0;”則值為7的表達(dá)式是 CA. *p+3 B. *p+4 C. *(p+3) D. *(p+4)77、已知賦值語句wang.year=2004;則wang的變量類型是 CA. 字符或文件 B. 整型或?qū)嵭?C. 共用或結(jié)構(gòu) D. 實型或指針78、設(shè)有以下說明語句:struct stu int a; float b; stutype;則下面的敘述不正確的是 CAstruct是結(jié)構(gòu)體類型的關(guān)鍵字Bstruct stu是用戶定義的結(jié)構(gòu)體類型名Cstutype是用戶定義的結(jié)構(gòu)體類型名D. a 和 b都

18、是結(jié)構(gòu)體成員名79、下列關(guān)于結(jié)構(gòu)的語法錯誤的是 DA結(jié)構(gòu)是由用戶自定義的一種數(shù)據(jù)類型B結(jié)構(gòu)中可設(shè)定若干個不同數(shù)據(jù)類型的成員C結(jié)構(gòu)中成員的數(shù)據(jù)類型可以是另一個已定義的結(jié)構(gòu)D在定義結(jié)構(gòu)時,可以為成員設(shè)置默認(rèn)值80、說明一個結(jié)構(gòu)體變量時,系統(tǒng)分配給它的內(nèi)存是 AA各成員所需內(nèi)存量的總和B結(jié)構(gòu)中第一個成員所需內(nèi)存量C成員中占內(nèi)存量最大者所需的容量D結(jié)構(gòu)中最后一個成員所需內(nèi)存量三、程序理解1以下程序運行結(jié)果是 #include int main()int a,b,c,d;a=b=5; c=(a+)+(a-)-(a+); d=(b+)-(+b)+(-a); printf(a=%d,b=%dn,a,b);p

19、rintf(c=%d,d=%dn,c,d);return 0;2以下程序運行結(jié)果是#include int main()int x=1,a=0,b=0;switch(x) case 0: b+; case 1: b=+a; case 2: a+;b+;break; case 3: +a;+b; printf(a=%d,b=%dn,a,b);return 0;3以下程序運行結(jié)果是 #include int main()int a,b,c=246;a=c/100%9; b=(1)&(-1)|0; printf(%d,%dn,a,b); return 0; 4以下程序運行結(jié)果是 #include i

20、nt main()int a=-1, b=4, k;k=(+a=0)&(b-=0); printf(%d,%d,%dn,k,a,b);return 0; 5以下程序運行結(jié)果是 #include int main()int a=5,b=60,c;if (ab) c=a*b;printf(%d*%d=%dn,b,a,c); elsec=b/a;printf(%d/%d=%dn,b,a,c);return 0; 6以下程序運行結(jié)果是 #include int main()int a=60,b=5,c;if (ab) c=a*b;printf(%d*%d=%dn,b,a,c); elsec=b/a;p

21、rintf(%d/%d=%dn,b,a,c);return 0; 7以下程序運行結(jié)果是 #include int main()int a=1,b=10;do b-=a;a+; while(b-0);printf(%d,%dn,a,b);return 0;8以下程序運行結(jié)果是#include int main()int x; for(x=10;x3;x-) if(x%3) x-; -x; -x; printf(%d ,x);return 0;9以下程序運行結(jié)果是 #include int main()int i;for(i=1;i6;i+) if (i%2!=0) printf(A);conti

22、nue;printf(B); printf(n);return 0; 10以下程序運行結(jié)果是 #include int main()int i;for(i=1;i6;i+) if (i%2=0) printf(A);break;printf(B); printf(n);return 0; 11以下程序運行結(jié)果是 #include int main()int i,x33=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+) printf(%d ,xii);printf(n); return 0;12以下程序運行結(jié)果是 #include int main()int i,n=0,0,0,

23、0,0;for(i=1;i=4;i+)ni=ni-1*2+1;printf(%d ,ni);return 0;13以下程序運行結(jié)果是 #include int main()int a =5,4,3,2,1,i,j;long s=0;for(i=0;i5;i+) s=s*10+ai;printf(s=%ldn,s);return 0;14以下程序運行結(jié)果是 #include int main()char s=abcdef;s3=0;printf(%sn,s);return 0;15以下程序運行結(jié)果是 #include #include int main()int a33=1,2,3,4,5,6,

24、i,j,s=0;for(i=0;i3;i+)for(j=0;ji;j+)s+=aij;printf(%dn,s);return 0; 16以下程序運行結(jié)果是 #include #include int main()char p110=abc, p210=ABC, str50=xyz;strcpy(str+2,strcat(p1,p2);printf(%sn,str);return 0; 17.以下程序運行結(jié)果是_#include int fun(int x,int y,int z) z=x*x+y*y;int main() int a=31; fun(5,2,a); printf(%dn,a)

25、; return 0; 18.以下程序運行結(jié)果是_#include int fun(int x,int y,int z) z=x*x+y*y;return z;int main() int a=31; a=fun(5,2,a); printf(%dn,a); return 0; 19.以下程序運行結(jié)果是_#include f(int b , int n) int i, r=0; for(i=0; i=n; i+) r=r+bi; return r; int main() int x, a= 2,3,4,5,6,7,8,9; x=f(a, 3); printf(%dn,x); return; 2

26、0.以下程序運行結(jié)果是_#include f(int b , int n) int i, r=1; for(i=0; i=n; i+) r=r*bi; return r; int main() int x, a= 2,3,4,5,6,7,8,9; x=f(a, 3); printf(%dn,x); return;21.以下程序運行結(jié)果是_int func(int a,int b) return(a+b); int main() int x=2,y=5,z=8,r; r=func(func(x,y),z);printf(%dn,r); return 0; 22.以下程序運行結(jié)果是_#includ

27、eint f(char s ) int i,j; i=0;j=0; while( sj!= 0) j+; return (j-i); int main()printf(%dn,f(ABCDEF);return 0; 23.以下程序運行結(jié)果是_#include int f(int a) int b=0,c; c=3; b+ ; c+; return (a+b+c); int main() int i; for(i=0;i3;i+) printf(%dn,f(i); return 0;24.以下程序運行結(jié)果是_#include int f(int a) int b=0; static c=3; b

28、+ ; c+; return (a+b+c); int main() int i; for(i=0;i3;i+) printf(%dn,f(i); return 0;25.以下程序運行結(jié)果是_#include int fun3(int x)static int a=3; a+=x; return(a); void main()int k=2,m=1,n; n=fun3(k); n=fun3(m); printf(%dn,n); 26.以下程序運行結(jié)果是_#include int m=13;int fun2(int x, int y) int m=3; return(x*y-m); int ma

29、in() int a=7, b=5; printf(%dn,fun2(a,b)/m); return 0;27.以下程序運行結(jié)果是#include int main() int a=100,b=10; int *pointer_1, *pointer_2; pointer_1=&a; pointer_2=&b; printf(a=%d,b=%dn,a,b); printf(*pointer_1=%d,*pointer_2=%dn,*pointer_1,*pointer_2); return 0;28.以下程序運行結(jié)果是#include int main() int *p1,*p2,*p,a,b

30、; a=11,b=121; p1=&a; p2=&b; if(ab) p=p1;p1=p2;p2=p; printf(a=%d,b=%dn,a,b); printf(max=%d,min=%dn,*p1,*p2); return 0;29.以下程序運行結(jié)果是 #includevoid main() int i,j,(*p)2; int b32 = 1, 2, 3, 4, 5, 6; p = b; for(i=0; i3; i+) for(j=0; j2; j+) printf(%d ,pij); printf(n); 30.以下程序運行結(jié)果是 #includevoid main() int i

31、,*p2; int a3 = 1, -2, 9; int b4 = 4, 7, 0, 10; p0=a; p1=b; for(i = 0; i 3; i+) printf(%dt, *(p0+i); printf(n); for(i = 0; i 4; i+) printf(%dt, *(p1+i); printf(n);31.以下程序運行結(jié)果是 #include int main() struct student long int num; char name20; char sex; char addr20; a=10101,Li Lin,M,123 Beijing Road;printf

32、(NO.:%ldnname:%snsex:%cnaddress:%sn,a.num,,a.sex,a.addr); return 0;32.以下程序運行結(jié)果是#include struct student int num; char name20; char sex; int age; ;struct student stu3=10101,Li Lin,M,18,10102,Zhang Fun,M,19, 10104,Wang Min,F,20; int main() struct student *p; printf( No. Name sex agen); for (p=stu

33、;pnum, p-name, p-sex, p-age); return 0; 四、編程1設(shè)有一個函數(shù)如下。編程,輸入x,求y值。y=#include#includeint main()float x,y;scanf(%f,&x);if (x0) y=sqrt(x);else if(x0)y=(x+1)/(x*x+2);else y=0;printf(x=%6.2f,y=%6.2fn,x,y);return 0;2下面程序的功能是計算1-3+5-7+-99+101的值存在s中。#include int main()int i,t=1,s=0;for(i=1;i=101;i+=2)s=s+i*t

34、;t=-t;printf(sum=%dn, s);return 0;#include int main()int i=1,t=1,s=0;while(i=101)s=s+i*t;t=-t;i+=2;printf(sum=%dn, s);return 0;#include int main()int i=1,t=1,s=0;dos=s+i*t;t=-t;i+=2; while(i=101);printf(sum=%dn, s);return 0;3一個整數(shù)被5除余3,被7除余5,被9除余7,這個數(shù)最小是幾?#includeint main()int i=8;doif (i%5=3) & (i%7=5) & (i%9=7)printf(%5dn,i); break;i=i+5; while(1);return 0;4. 編寫一程序,將兩個字符串連接起來,要求不用strcat函數(shù)。#include#includevoi

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論