




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1 c 語言程序設(shè)計期末試題a(含答案)一、單項選擇題 (選擇一個最佳答案,每題2 分,共 20 分)1。一個 c程序的執(zhí)行是從 ( ) 。a) 本程序的 main 函數(shù)開始,到 main 函數(shù)結(jié)束b) 本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束c) 本程序的 main 函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束d) 本程序文件的第一個函數(shù)開始,到本程序main 函數(shù)結(jié)束2.下列選項中,不能用作標識符的是( ) 。a) _1234_ b) _1_2 c) int_2_ d) 2_int_ 3。以下定義語句中正確的是( ) 。a) char a=ab=b; b) float a=b
2、=10。0;c) int a=10,b=a;d) float a,b=a;4。設(shè)有以下定義 :#define d 2 int a=0; double b=1.25; char c=a;則下面語句中錯誤的是(). a) a+;b) b+ c) c+; d) d+;5。以下 4 個選項中,不能作為一條c語句的是()。a) ; b) a=0,b=0,c=0;c) if(a0); d) if (b=0) m=1;n=2; 6。有以下定義語句 double a,b; int w; long c; 若各變量已正確賦值,則下列選項中正確的表達式是(). a) a=a+b=b+ b) w%(int)a+b)
3、c) (c+w)( int)a d) w=a=b; 7。設(shè)有定義: int n=0,p=n,*q=&p;則以下選項中,正確的賦值語句是(). a) p=1;b) q=2;c) q=p; d) p=5; 8.設(shè)有定義 :int a,*pa=&a; 以下 scanf 語句中能正確為變量a 讀入數(shù)據(jù)的是 ( ). 2 a) scanf(“ d,pa) ;b) scanf(“ d,a) ; c) scanf(“%d,&pa) ;d) scanf(“%d,pa); 9.若有說明: char *language=”fortran, ”basic ”,pascal,”java ”,”
4、 c ”;則表達式 *language1 *language 2比較的是 () 。a)字符 b和字符 p b) 字符串 fortran和字符串 basic c)字符 f 和字符 b d) 字符串 basic和字符串 pascal 10.執(zhí)行語句 for(i=1;i+ 4;); 后變量 i 的值是 ( ). a) 3 b)4 c) 5 d) 不定一、填空題 (每空 2 分,共 18 分)1.若有定義: int a=7;float x=2.5,y=4。7;則表達式 x+a3*(int )(x+y )2/4 的值為。2.有程序段: int a10=1,2,3,4,5 ,6,7,8,9,10,*p=a
5、3 ,b; b=p 5 ; 則 b 中的值是 . 3.函數(shù) swap (int x,int y)實現(xiàn)對 x 和 y 值的交換。則執(zhí)行語句int a2= 1,2 ; swap(a0 ,a1 ); 后, a0 = ,a1= 。4。設(shè)有以下宏定義: define f(z ) z*z ,執(zhí)行賦值語句 k=f (44)/f (22);( k 為 int型變量 ) 后,k 的值是。5。書寫語句求 a, b 兩個數(shù)的最大值 max 。 ? : ;6.若 x 為 int 型變量,則執(zhí)行 x=7; x =x=xx; 語句后, x 的值是。二、讀程序?qū)懡Y(jié)果(每題6 分,共 24 分)1.有以下程序int f(in
6、t a) int b=0;static c=3;b=b+1;c=c+1;return(a+b+c); void main() int a=2,i; for(i=0;i3;i+) printf(“%2d,f (a); 3 執(zhí)行后輸出的結(jié)果是。2.有以下程序void f (int y,int x) y=y+*x ;x=x+y; void main ( ) int x=2,y=4; f(y,x); printf(“x=%d ,y=%dn,x,y); 執(zhí)行后輸出的結(jié)果是 . 3。有以下程序define letter 1 include =a & cz) c=c+1; else if(c=z )
7、 c=c 25; #else if(c=b c=z) c=c1; else if(c=a) c=c+25; #endif printf(”c ,c); 執(zhí)行后輸出的結(jié)果是。4.有以下程序 void fun(int a,int i,int j) int t; if(ij ) t=ai;ai=aj;aj=t;4 i+ ; j- ; for(i=0;i4;i+) printf(”%2d,ai );fun(a ,i ,j) ; void main() int x=2,6,1,8,i; fun(x,0,3 ); for(i=0;i 【1】int sumhw ( char *p,int n );char
8、jughw (char str ); void main (int argc,char *argv) int s; if (argc 2) printf(請輸入有效參數(shù)”); else s=sumhw( 【2】,argc 1); printf(”共有 d 個回文串 n ”,s ); int sumhw(char *p,int n ) char flag; int i,sum=0 ; for(i=0;i n;i+ ) flag=jughw(【3】); if ( 【4】 ) sum+;5 return sum;char jughw(char str) char *p1,*p2; int n; n=
9、strlen(str );p1=str; p2= 【5】;while (【6】) if (*p1!=*p2) break; else p1+; 【7】; if (【8】 ) return(n);else return(y); 五、編程題( 30分)1.用指針和數(shù)組兩種方法 實現(xiàn)如下功能:將一個字符串按逆序存放. (18分) 要求(1)主函數(shù)中完成輸入和輸出字符串。(2)逆序存放功能用子函數(shù)完成。2。一個整型數(shù)組有 10 個元素 , 編寫程序刪除所有值為n 的元素。( 12 分) 要求(1) 主函數(shù)完成 n 的輸入,數(shù)組元素輸入以及刪除后數(shù)組元素的輸出。(2)刪除功能用子函數(shù)完成。c 語言模擬試
10、卷一參考答案一、單項選擇題 (選擇一個最佳答案 ,每題 2 分,共 20 分) 1、a2、d3、c4、b5、d6、c7、d8、a9、a10、c二、填空題(每空2 分,共 18 分)1、2。5000002、93、1 24、285、(ab) max=a max=b6 6、14三、讀程序?qū)懡Y(jié)果 (每題 6 分,共 24 分)1、7 8 9 2、 x=8,y=4 3、 c lbohvbhf 4、 8 6 1 2 8 6 1 2 四、程序填空(每空1 分,共 8 分)【1】#includestring。h【2】argv+1【3】*(p+i )【4】flag= = y【5】str+n1【6】p1p2【7】
11、p2【8】p1p2五、編程題(共 30 分)1. (1) 數(shù)組法(9 分)#include string.h#include stdio.h#define n 20 void inv(char str,int n);void main ()char strn; gets (str); inv(str,strlen(str) ); puts (str) ;void inv(char str,int n)int i,j,temp; for(i=0,j=n-1;i=j ;i+ ,j ) temp=str i ; str i=strj; strj=temp; 7 (2)指針法( 9 分) includ
12、e string 。h#include define n 20 void inv(char str,int n); void main () char strn; gets (str) ; inv (str,strlen(str); puts (str) ;void inv(char *str,int n) char i ,*j,temp; for(i=str,j=str+n1;i=j ;i+,j )temp=*i; *i= j ;j=temp;2. (12分) include stdio。hint m ;void del_element(int num ,int n); void main
13、()int num 10 ; int i,n; m=10; for (i=0;i10;i+) scanf(%d ”,&num i ); printf(please input nn”); scanf (%d,&n); del_element(num,n); for(i=0;im;i+) printf(”%d ,num i ); 8 void del_element(int num, int n )int i,j ; for(i=0;im;i+) if(num i=n ) for (j=i+1;jm ;j+) numj 1=numj ; m; i-; c 語言程序設(shè)計期末試題b(
14、含答案)一單項選擇題(每小題1 分,共 10 分) 1。以下 4 組用戶定義標識符中,全部合法的一組是( ) a)_total clu_1 sum b)if max turb c)txt real 3com d)int k_2 _001 2。以下程序的輸出結(jié)果是() #include stdio.h main( ) int a = 1, b = 2 , c = 3 ;printf(“%d ”, c ba); a ) 2 b) 1 c) 0 d) 3 3. 以下正確的敘述是()a) 在 c語言中 ,main 函數(shù)必須位于文件的開頭b) c 語言每行中只能寫一條語句c) c 語言本身沒有輸入、輸出
15、語句d) 對一個 c語言進行編譯預(yù)處理時,可檢查宏定義的語法錯誤4。設(shè)有定義: int a,*pa=&a; 以下 scanf 語句中能正確為變量a 讀入數(shù)據(jù)的是 ( )9 a)scanf (”%d,pa);b)scanf (”%d,a); c)scanf (”%d ”, pa); d)scanf( ”d, pa);5。若有以下程序段, int c1=1,c2=2,c3; c3=1。0/c2 c1;則執(zhí)行后, c3 中的值是()a) 0 b) 0.5 c) 1 d) 2 6. 能正確表示邏輯關(guān)系:“a=10或 a0”的 c語言表達式是()a) a =10 or a=0 b)a=0|a =
16、10 c)a =10 &a=0 d)a=10a=0 7. 執(zhí)行下面的程序時,將1、2、3、4 分別賦給 a、b、c、d,正確的輸入是() main ( )int a,b,c,d; scanf( “d,d,%dd”,&a, b, c,d); a)1 2 3 4 b)1 2 3,4 c) 1,2,3,4 d) 1 ,2,3 4 8. 有以下程序段main( ) int k=0;while (k=1) k+ ;則 while 循環(huán)執(zhí)行的次數(shù)是()a) 無限次 b) 有語法錯,不能執(zhí)行c) 一次也不執(zhí)行 d) 執(zhí)行 1 次9。以下程序的輸出結(jié)果是( ) #include main (
17、) int a = 5, b = 4 , c = 6 , d ; printf(“ d”,d=ab?(ac?a:c ): b); a) 5 b) 4 c) 6 d) 不確定10. 下面是對數(shù)組 a 的初始化,其中 不正確 的是()a)a5 ” abcd ”b)a5 a, b, c, d10 c)a5” d)a5abcde ”二、填空題(每空2 分,共 32 分)1. 結(jié)構(gòu)化程序設(shè)計中的三種基本結(jié)構(gòu)是 1、 2 、 3 。2。c程序的基本組成單位是 4。3. 標識符的第一個字符必須是 5或6。4. 實常數(shù) 123.457 的規(guī)范化指數(shù)表示形式是7 。5。表達式 7/2 的結(jié)果是8。表達式 72
18、的結(jié)果是9。6。定義一個整型數(shù)組a10, 則下標最大的數(shù)組元素為10 。7。在函數(shù)的遞歸調(diào)用過程中, 要使遞歸過程不是無限制進行下去,必須具有 11 。8.c 語言提供了 12 命令用來實現(xiàn)“文件包含”的操作。9. 已知:char c = “china ” ; 將字符數(shù)組 c 中整個字符串一次輸出的語句書寫格式為13 。10. 表達式 43 & 7 5-!0 的值為 14。11. 按照變量在函數(shù)中作用域不同,可以將變量分為15 和 16。三、計算題(要求寫出步驟)(每題4 分, 共 8 分)1. 設(shè) int a=12,求出表達式 a+=a=aa 運算后 a 的值。2。 設(shè) a=2,b=
19、3,x=3。5,y=2.5 求算術(shù)表達式 (float)(ba)/2+(int)x(int )y 的值四、讀下列程序,寫出程序的運行結(jié)果(43=12) 1已知字符 a的 acsii 碼值為 65, 寫出以下語句的輸出結(jié)果main( )char ch=a;printf(”%c,%d ,ch,ch+3);2。main( )int a = 10;printf(“ d , +a);printf(“d ”, a-);3main( ) int t=1 ;for(i=1 ; i5 ; i+)t=ti;printf(” d,t); 11 4. f(int a, int b)b=b+a;a=*a+b; main
20、( ) int x=2,y=4;int p; p=&x; f(p,y); printf(%d ,d,x,y); 五、程序填空 ( 每空分 , 共 14 分) 1. 下列程序段以函數(shù)swap( )調(diào)用的形式實現(xiàn)兩個變量值的互換,請?zhí)羁胀晟瞥绦? swap(int * m,int n)int temp;temp= 1;2;*n= 3;main( ) int x,y;scanf(“ d,%d,&x,&y);swap( 4);printf(%d,d” ,x,y);2。下面程序是計算13+57+ -99+101的值,請?zhí)羁胀晟瞥绦?。main( )int i,m,t=1,s=0;f
21、or (i=1;i=101;5) 6;s=s+m ;7;printf(“n”,s );六、編程題 : (共 24 分) 。編程求 1!+2!+3!+!的值。 ( 6 分) .用函數(shù)的遞歸調(diào)用方法求下列函數(shù)式的值(要求n 由用戶輸入),遞歸公式為:(8 分)12 1 (n=1)total(n)= total(n-1)+n+1 (n1). 編寫程序輸出下列形式的楊輝三角形的前10 行。(10 分)1 1 11 2 1 1 3 3 1 1 4 6 4 1 c 語言模擬試卷二答案及評分標準一、單項選擇題(每小題1 分)1.a 2. c 3. d 4。 a 5。 b 6。 d 7。 d 8. a 9。
22、c 10。 d二、填空題 ( 每空 2 分) 1。順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。2.函數(shù)3.字母、下劃線4。1.23457e2或 1。23457e25.3、16.a97.使遞歸結(jié)束的條件8.#include9.printf(“ s”,c)10。 011. 全局變量、局部變量三、計算題 ( 要求寫出步驟 ) (每題 4 分) 1. a-=aa a=aaa a=12144= -132a+=-132 a=a+(132) a=132-132= -2642.1。0/2+3%2=0.5+1=1.5四、讀下列程序,寫出程序的運行結(jié)果(每題分)。. ,. 。 。. 。 ,13 五、程序填空:(每空分)1.*m
23、 2.*m=*n 3。 temp 4 。 x ,y 5. i=i+2 6. m=it 7 。 t=-t 六、編程題. main( ) int i; float t=1,s=0; for(i=1;i= ;i+) t=ti; s=s+t; printf(”s=en ”,s); .total (int n) int c; if (n=1) c=1; else c=total(n-1)+n+1; return(c); main() int n; scanf( “d”,n); printf(“%d ”,total(n);。main( ) int a1010 ,i,j; for(i=0;i 10;i+)
24、for (j=0 ;j=i ;j+ ) if((j= =0 )( i= =j)) aij=1; else aij =ai-1j-1 +ai-1j; 14 printf(d,aij); printf(n”); 15 選 擇 練 習(xí) 題1、c 語言中最簡單的數(shù)據(jù)類型包括(b ). a、整型,實型,邏輯型b、整型,實型,字符型c、整型,字符型,邏輯型d、整型,實型,邏輯型,字符型2、c 語言中,運算對象必須是整型數(shù)的運算符是(a ). a、b、/ c、和 / d、* 3、為表示關(guān)系xyz,應(yīng)使用 c 語言表達式(a)。a、 (xy)& (yz)b、 (xy)and (yz) c、 (xyz)
25、d、 (xy) ( yz)4、c 語言程序的基本單位是(c ) 。a、程序行b、語句c、函數(shù)d、字符5、c 語言的程序一行寫不下時,可以(d )。a、用逗號換行b、用分號換行c、用回車符換行d、在任意一空格處換行6、下述標識符中,( c)是合法的用戶標識符. a、 a b b、void c、 _studentd、ab7、在 c 語言中 ,字符型數(shù)據(jù)在內(nèi)存中以(b )形式存放。a、補碼b、ascii 碼c、反碼d、原碼8、一個程序由若干文件組成,共用同一變量,則此變量的存儲類別應(yīng)該為(b ) 。a、 auto b、extern c、static d、register 9、以下關(guān)于switch 語
26、句和 break 語句的描述中 ,只有 (b )是正確的。a、在 switch 語句中必須使用break 語句b、在 switch 語句中,可以根據(jù)需要使用或不使用break 語句c、 break 語句只能用于switch 語句中d、 break 語句是 switch 語句的一部分10、c 語言規(guī)定:調(diào)用一個函數(shù)時,實參變量和形參變量之間的數(shù)據(jù)傳遞是(b ). a、地址傳遞b、值傳遞c、由實參傳給形參,并由形參傳回給實參d、由用戶指定傳遞方式11、下述 c 語言轉(zhuǎn)義符中(d )是非法的。a、 b b、037 c、 0 xf d、 12、為了要計算s=10!(10 的階乘 ),則以下對s 的定義
27、正確的是(d)。標識符由字母,數(shù)字和下劃線組成且第一個字符必須為字母或下劃線auto 自動變量register 寄存器變量extern 外部變量static 靜態(tài)變量16 a、int s b、 unsigned s c、short s d、long s13、判斷變量ch 中的字符是否為大寫字母,最簡單的正確表達式是(a)。a、ch=a&ch = zb、a=ch=z c、a =ch=z d、ch =a&ch =z 14、在 c 語言中 ,能表示無符號長整型常數(shù)的是(d ) 。a、ol b、4962710u c、912374u d、2ul15、能正確表示c 語言的字符常量的是( c
28、). a、 0 x41 b、a c、 0 d、 0 16、c 語言中邏輯表達式的值為( a ). a、0 或 1 b、非零值或零值c、 true 或 false d、 true 或 false17、c 語言提供的基本數(shù)據(jù)類型關(guān)鍵字是( c ) 。a、integer b、 float c、unsigned d、double 18、若定義語句:int b =1,2 ,3,4,5 , p=b;則表達式 p+的值是 ( a ). a、1 b、2 c、b0的地址d、b 1的地址19、在下列選項中,不正確的表達式是( c ). a、ab b、c-, +b, a+=1 c、a=c+b nm=k d、p+ 2
29、0、若有以下定義:int a =1,2,3,4,5,6,7 ;char cl=b,c2=2;則數(shù)值不為2 的表達式是 ( d ) 。a、a1 b、d-cl c、a3-c2 d、 c2025、下述對c 語言字符數(shù)組的描述中錯誤 的是(c ) 。a、字符數(shù)組可以存放字符串b、字符數(shù)組中的字符串可以整體輸入、輸出c、可以在賦值語句中通過賦值運算符=對字符數(shù)組整體賦值d、不可以用關(guān)系運算符對字符組中的字符串進行比較27、以下程序的輸出結(jié)果是( a )。main() int i=010, j=10 , k=ox10;printf (d,%d,n, i,j,k) ; 17 a、8,10,16b、8,10,
30、10 c、10,10,10 d、10,10,16 28、以下程序的輸出結(jié)果是(b)。#include stdio.hmain()printf (n ,null ) ; a、不確定的值(因變量無定義) b、0 c、 1 d、1 29、以下程序的輸出結(jié)果是(b ). main( ) char c1= 6,c2= 0;printf ( d,%d,n,c1, c2,c1c2) ;a、因輸出格式不合法,輸出出錯信息b、54,48,6c、6。0, 7 d、6,0,6 32、下述對c 語言字符數(shù)組的描述中錯誤的是(c ) 。a、字符數(shù)組可以存放字符串b、字符數(shù)組中的字符串可以整體輸入、輸出c、可以在賦值語句
31、中通過賦值運算符=對字符數(shù)組整體賦值d、不可以用關(guān)系運算符對字符組中的字符串進行比較33、turbo c 中 ,對于以下程序(a ). main() int x,y ;y=creat( x); printf( %d n , y) ;creat(int a) return a+;a、編譯時會給出錯信息b、順利進行編譯、連接、執(zhí)行;不報任何錯誤c、順利通過編譯、連接、但不能執(zhí)行d、順利通過編譯,但連接出錯34、設(shè)有如下定義:int x=10, y=4,z ;18 則語句:printf(n , z=(x%y, x/y) ) ;的輸出結(jié)果是(c ) 。a、1 b、0 c、2 d、3 35、下述程序段的
32、輸出結(jié)果是(d ) 。main()int x=10 , y=10;printf ( d, n , x+ , +y);a、10,10 b、11,11 c、11,10 d、 10,1136、定義如下變量和數(shù)組:int j;int x3 3= 1,2,3,4,5, 6,7,8,9; 則下面語句的輸出結(jié)果是( c ) 。for(i=0 ;i3;i+ printf ( %d, xi2-i); a、159 b、147 c、357 d、369 37、若要求在if 后一對圓括號中表示a 不等于 0 的關(guān)系,則不能正確表示這一關(guān)系的表達式為(c )。a、a 0 b、!a c、a=0 d、a 38、若 m,y,z
33、 均為 int 型變量,則執(zhí)行下面語句后m 值是( a ) 。m=1;x=2;y=3 ;z=4;m=( mx)? m:x; m=( my)? m:y; m=( mz) ?m:z;a、1 b、2 c、3 d、4 39、若有定義: int a=7;float x=2.5 ,y=4。7,則表達式x+a%3* (int) (x+y )%2/4 的值是(a ) 。a、2.500000 b、2.750000 c、3.500000 d、0。000000 40、如下說法不正確的是( c ). a、ca+b 等效于 c( a+b)19 b、若 a,b 均為真 ,則 a b 為真c、表達式 c d的值為 0d、邏
34、輯運算符!比邏輯運算符|的優(yōu)先級高41、putchar()函數(shù)可以向終端輸出一個( b ) 。a、整型變量表達式值b、字符c、字符串d、實型變量值42、表達式18/4*sqrt(4。0)/8 值的數(shù)據(jù)類型為( c) 。a、int b、float c、doubled、不確定43、若已定義a為整型變量:a=-2l; printf (n,a) ;則以上語句(b ). a、賦值不合法b、輸出值為2 c、輸出為不確定值d、輸出值為2 45、若 int 類型數(shù)據(jù)占兩個字節(jié),則以下語句的輸出為(d ) 。int k= -1; printf(%d, un,k,k); a、-1,-1 b、-1,32767 c、
35、-1,32768 d、 1,6553546、已知字母a的 ascii 碼十進制值為97,則執(zhí)行以下語句后的輸出為(c ) 。yhg char a= a;a- ;printf (%d,n ,a+ 2- 0,a+3 0) ; a、b,c b、a-運算不合法,故有語法錯c、98,c d、格式描述和輸出項不匹配,輸出無定值47、下面語句中( b )是 c 語言的正確賦值語句。a、a=1,b=2 b、i+; c、a=b=5d、y=int( x) ;48、設(shè)有以下說明語句struct stu int a;float b;stutype; 則下面的敘述不正確的是(c ) 。a 中聲明變量并初始化時:int
36、a=1,b=5; 但是,只賦值時是不能這樣寫的,應(yīng)該寫成a=1;b=2; c無分號,不是完整的語句,d 中 x 沒有定義,如果是int x=3;int y; y=int(x);這樣是對的20 a、struct 是結(jié)構(gòu)體類型的關(guān)鍵字b、 struct stu 是用戶定義的結(jié)構(gòu)體類型c、stutype 是用戶定義的結(jié)構(gòu)體類型名d、a 和 b 都是結(jié)構(gòu)體成員名49、能正確表示:當(dāng) x 的取值范圍在1, 10或100,110 內(nèi)為真,否則為假的表達式是( c ). a、 (x 1)&( x 10)( x 100) (x 110)b、 (x 1)|(x 10)( x 100)|( x 110)c
37、、 (x 1)&( x 10)|(x 100)& (x 110)d、 (x 1)|(x 10)&( x 100)&( x 110)50、設(shè) n 為整型變量 ,則循環(huán)語句for(n=10;n0;n-)的循環(huán)次數(shù)為(a) 。a、10 b、9 c、11 d、12 51、在對文件進行操作時,若要求文件的位置指針回到文件的開頭,則應(yīng)當(dāng)調(diào)用的庫函數(shù)是(d ) 。a、fopen()b、fseek( ) c、fclose() d、rewind()52、下列哪個數(shù)組定義是正確的(d ). a、 int a5.5; b、 int a10; c、 int an ;d、 int a 3
38、+2 ;53、一個變量的指針就是(a ). a、變量的地址b、變量的值c、變量的名稱d、變量的類型55、下列正確的說法是(c ) 。a、宏替換是在程序運行時進行的b、函數(shù)調(diào)用是在程序編譯時進行的c、宏替換時 ,如果實參是表達式,應(yīng)先求表達式的值,再替換d、函數(shù)調(diào)用時,如果實參是表達式,應(yīng)先求表達式的值,再替換56、對于數(shù)學(xué)式x/2a,下面正確的c 語言表達式是 ( d )。a、sqr( x)/2a b、sqr(x)/2*a c、sqrt(x)/( 2*a)d、sqrt(x)/2*a57、若 int 類型數(shù)據(jù)占2 字節(jié),則以下語句的輸出為(d ) 。int k=32768 ;printf ( %
39、d,n ,k , k); a、-1,65535b、 -1,32767 c、 1,-1, d、-32768,3276859、下面程序中(b )有錯誤 . 21 1)#includestdio.h2)main ( )3) 4)int a3 =0,0,0 ;5)int i; 6)for(i=0;i 3;i+scanf(%d, ai) ;7)for(i=1;i3;i+ a0=a0+ai;8)printf(n,a0 ; a、第 4 行b、第 6 行c、第 7行d、第 8 行60、下面程序的運行結(jié)果(c ) 。main( ) unsigned a=3,b=10;5 printf ( %d na 2|b 1
40、; a、3 b、10 c、13 d、 14 61、已定義x 為 float 型變量 . x=213.82631; printf(%-4。n , x); 則以上程序(a ) 。a、輸出格式描述符的域?qū)挷粔?,不能輸出b、輸出為213.83 c、輸出為213.82 d、輸出為 213.82 62、設(shè)已定義整型變量k,則下面的程序輸出為(d ) 。k=017;s=111;printf ( d,+k);printf ( %xn,s+); a、15 6f b、16 70 c、15 71 d、16 6f63、不能正確表示ab/c d的 c 語言表達式是(c ). a、a*b/cd b、a/(cd) b c、
41、a*b/c/d d、a*b/(c*d )64、下列 ( c )表達式不滿足;當(dāng)x 的值為偶數(shù)時值為“真” ,為奇數(shù)時值為“假”. a、x2= =0 b、 !x%2!=0 c、x/22-x= =0d、 !(x2)65、設(shè)已定義k 為 int 型變量 ,則下面 while 循環(huán)執(zhí)行 ( c )次。%m.nd表示最大場寬m , 小數(shù)位為n 位,整數(shù)位則為m-n-1位,夠 m位右對齊。 %-m.nf 可以控制輸出左對齊22 k=10 ;while(k=0)k=1;a、執(zhí)行 10 次b、無限循環(huán)c、一次也不執(zhí)行d、執(zhí)行一次67、用高級語言編寫的程序稱之為( a). a、源程序b、目標程序c、匯編程序d、
42、命令程序69、有以下程序的輸出結(jié)果為(b ). main( ) char a=0 x95,b,c; b=(a0 xf) 4;c=(a0 xf0) 4; a=bc; printf ( n ,a); a、24 b、59 c、 34 d、56 70、下述程序段的輸出結(jié)果是( a) 。int a=3;b=4; int c=ab 3;printf (d,c)a、3b、4 c、5 d、6 73、設(shè) int 型變量在內(nèi)存中占用兩個字節(jié)存儲單元,定義如下結(jié)構(gòu)體:struct student char name10; char sex; int age;struct int year;int month;int
43、 day;birth ;stul; 23 則表達式sizeof(stul)的值是() 。a、5 b、8 c、2 d、26 75、下述程序段的運行結(jié)果是(b )。#include main( ) int m=7,n=4; float a=38。4,b=0。 4,x;x=m/2+n a/b+1/2; printf(n ,x);a、22 b、387。000000 c、27 d、2676、下面程序的運行結(jié)果是( c ) 。main( ) int cl=2 ,c2=0; while( !c2- )printf ( %d%d,cl- ,c2);a、陷入死循環(huán)b、不輸出任何內(nèi)容c、輸出 2 -1 d、輸出
44、20 77、下面程序的運行結(jié)果是(b) 。int m=4 ,n=6; max( int x,int y) int max ;max=xy?x:y;return(max); main( ) int m=10; printf(dn,max(m,n);a、4 b、10 c、6 d、5 24 78、下面程序的運行結(jié)果是(b )。fun(int p) int k=1; static t=2; k=k+1 ;t=t+1;return(p*k t) ; main( ) int x=4 ;fun(x); printf ( n ,fun(x)); a、4 b、32 c、30 d、 16 79、閱讀下面的程序:m
45、ain( ) char ch; scanf(c, ch); if(ch=a ch void fun(int x ) putchar( 0+(x 10) ); fun(x/10); main( )printf(n); fun(1234); a、4321 b、321 c、21 d、1 86、設(shè)已定義i 和 k 為 int 類型變量 ,則以下 for 循環(huán)語句(b) 。for(i=0,k= 1;;i+ ,k+)printf(* n); a、判斷循環(huán)結(jié)束的條件不合法b、是無限循環(huán)c、循環(huán)一次也不執(zhí)行d、循環(huán)只執(zhí)行一次87、下列程序段選擇項中,使i 的運行結(jié)果為4 的程序段是(d). a、int i=0
46、 ,j=0;b、int i=1,j=70; (i=3,(j+ )+i);j=i=( (i=3) *2) ;c、int i=0,j=1; d、int i=1,j=1;(j= =1)? (i=1):(i=3); i+=j+=2;89、閱讀以下程序(最左邊是附加的行號). 1)include stdio.h2)main( )26 3) float s5 ; 4) int i ,k=0; 5)for(i=0 ;i5;i+ )6) scanf(d ,s+i);7) for(i=0 ;i5;i+ )8)k=si; 9)printf(n%f ,(float )k) ;10) 此段程序(a) . a、沒有錯誤
47、b、第 4 行錯誤c、第 6行錯誤d、第 9 行錯誤90、下列程序中有三個是完全相同的功能,只有( b )所完成的功能與其他程序不同。a、s=0; b、s=0;i=0; i=1;while(i=100) while(i+ 100)s+=i+; s+=i;c、s=0;d、s=0; i=0; i=0; while(i=100) while(+i=100 )s+=+i; s+=i; 92、執(zhí)行下面的程序后,a的值為(d )。main( ) int a,b;for(a=1,b=1;a=100;a+) if(b=20)break; if(b 3= =1) b+3; continue; b=5; a、7
48、b、8 c、d、10 27 93、下面的程序中(c )有錯誤。1) includestdio.h 2)main( ) 3) 4)float a3=0。0; 5)int i ;6)for(i=0;i3 ;i+ )7) scanf(%d,&a i ) ;8)for(i=1;i main( ) int i ;for(i=1; i5 )printf (n ,x-); a、7 和 5 b、6 和 3 c、7 和 4 d、6 和 4 101、運行下段程序的結(jié)果是(d ). include main( )int x; for(x=1;x =100; x+)if(+x%= =0) if(+x 3= =
49、0)if(+x%5= =0 )printf ( %d ,x) ; a、31,61,91 b、30,60,90 c、不輸出任何內(nèi)容d、 29,59,89102、運行下述程序段后,i 值為 4 的是(b) 。a、int i=1,j=0 ;b、inti=1,j=1;29 i=j= ((i=3)+); i+=i+=2;c、int i= =0 ,j=0; d、int i=0 ,j=1;(i=2,i+(j=2) ) ;(j= =1 )? i+=3:i=2; 104、以下程序的輸出結(jié)果是(d) 。main() int a=-1,b=4,k; k=(+a, 0)! (b-=0) ;printf( %d,d,n
50、 ,k,a,b); a、1,0,4 b、1,0,3 c、0,0,3 d、0,0,4105、以下程序的輸出結(jié)果是(a ). main( ) int x=3,y=0,z=0; if(x=y+z)printf ( ); else printf ( # ) ;a、# # b、 * c、1 d、 4 106、以下程序的輸出結(jié)果是(a ) 。int m=13; int fun2(int x, int y) int m=3; return(x*y-m) ; main( ) int a=7,b=5; printf ( %n ,fun2(a,b)/m) ; a、2 b、3 c、7 d、5 112、閱讀程序 :
51、30 #includestdio.h main( )int m,n,w; scanf( %d,d ,&m,n) ;while(n)w=mn; m=n; n=w; printf (%d ,m); 如果輸入10,6,則輸出結(jié)果是(d ). a、60 b、120 c、2 d、10113、下列程序執(zhí)行后輸出的結(jié)果是(a )。includestdio。h f(int a ) int b=0; static c=2; a=c+, b+ ;return(a+b); main( ) int a=2,i,k ;for(i=0;i 2;i+); k=f(a+ ) ; printf (n ,k); a、3
52、b、0 c、4 d、 5 115、下列程序的運行結(jié)果是(b ) 。main( )static int a34=1 ,2, 3,4 ,5,6,7,8 ,9,10,11,12 ; int i,j, sum=0;31 for(i=0 ;ii) sum+=aij; printf ( sum=%dn ,sum);a、40 b、36 c、24 d、30 120、閱讀下列程序:main( ) int n3,i,j , k; for(i=0;i3;i+ )ni=0;k=2; for(i=0;ik;i+) for(j=0;j k;j+) nj =ni+1 ;for(i=0 ;i3;i+ )printf (d ,
53、ni); printf(n) ;運行該程序 ,其輸出結(jié)果是(b ). a、230 b、330 c、123 d、 321 123、下述程序段的運行結(jié)果是(b ). main( ) static int a33=1,2,3 ,4 , 5,6 , 7,8,9; int b 32,i,j; for(i=0;i 3;i+) for(j=0;j3;j+ ) bi j=aj i+ai j; printf (5d,bij); 32 printf(n); a、2 4 7 b、2 6 10 c、 18 14 10 d、18 2 3 2 10 8 6 10 14 14 10 6 4 10 2 3 6 18 10 1
54、4 1810 6 2 7 4 2 124、如果程序中有如下的說明和定義:struct s int x,y; struct s x,y; 則會發(fā)生的情況是(a ) 。a、編譯出錯b、能順利編譯和鏈接,但不能執(zhí)行c、程序能順利通過編譯,但是鏈接時會出錯d、程序能順利編譯,鏈接,執(zhí)行127、對 c 語言的文件存取方式的論述中,正確的是文件(c ) 。a、只能順序存取b、只能隨機存取(也稱直接存?。ヽ、可以是順序存取,也可以是隨機存取d、只能從文件的開頭存取填空練習(xí)題1、有以下定義: int x; float y; 執(zhí)行 scanf(” %3d f,&x, y) ;時,如果輸入的數(shù)據(jù)為:123
55、45 678 (y+x)?10:12 y+? a : z 的值是:65 。5、請寫出以下語句的輸出結(jié)果9 。33 printf ( d,strlen(n” )); 7、c 語言規(guī)定:標識符只能由字母、 數(shù)字、下劃線三種字符組成. 8、有定義語句:int x=5,y=1;表達式x&y=y? x|y:xy的值為5。9、下述程序段的循環(huán)次數(shù)是0 次,輸出結(jié)果是y=1,x=0 . int x=0 ,y=0; do y+;x =x;while(x 0&y 5)printf (y=%d , x=d” ,y,x); 10、若 m,y,z,均為 int 型變量,則執(zhí)行下面語句后m 值是 1.
56、m=1;x=2 ;y=3;z=4;m=(mx) ?m:x; m=(my) ?m:y; m=(mz)?m:z; 11、下述程序段的運行結(jié)果是5 。int x,y; x=17; y=26;printf (%d” ,y/=(x%=6 )); 12、下列循環(huán)語句執(zhí)行的循環(huán)次數(shù)是:無數(shù)次。for(a=1,b=1;a3; printf( d,c) ;17、下述程序段的輸出結(jié)果是1245056。34 #include stdio。hvoid fun(int*x ) printf (%d” ,+x); main( )int y=20 ;fun (&y ) ;20、下述程序段的運行結(jié)果是15 。#inc
57、lude stdio。hmain( ) int a33=1,2,3 ,4,5,6,7,8,9;int s=0,i; for(i=0;i 3;i+) s+=( a+i)i ; printf (d,s) ;21、下述程序的輸出結(jié)果是18 。includestdio。hmain() int x=8 ,y=9;int k; k=(x+)+( +y) ;printf(” %d ”,k); 22、下述程序的輸出結(jié)果是6. include int fun (int x) static int a=3; a+=x;35 return a;main( ) int k=2,m=1 ,n; n=fun (k ) ;
58、n=fun (m )printf (%d” ,n); 23、用“冒泡法”對輸入的10 個字符按由小到大順序排序,請?zhí)羁铡?include #define n 10 main() int i,j;char str11; scanf(” %s,str) ;char t;for(j=1;j n;j+ )for(i=0;(istri+1 ) t=stri; stri=stri+1; stri+1=t; for(i=0;i n;i+) printf (” %c”,stri); 24、把字符數(shù)組中的字符串按反序存放,例如 :字符串 ” abcd 的輸出結(jié)果應(yīng)為” dcba ” ,請?zhí)羁?。includest
59、dio.h #include conio.h36 includestring。h main()char a100 ,t; printr( “輸入字符串:n) ;scanf(” %s,a) ;int i,j ;for(i=0,j=strlen (a);istrlen(a)/2 ; i+,j ) t=ai; ai=aj-1; aj 1 =t ; printf ( “轉(zhuǎn)換后的字符串是:sn” ,a); 27、下面程序的執(zhí)行結(jié)果是2,2。include main( )int array 3 =10 ,20,30 , 28,15。 10, 50,10, 60; int i,j,row=0 ,col=0;
60、for(i=0;i 3;i+ )for(j=0;j1) t=a%b; a=b;b=t; printf( 3d,a);35、求下列算式1+1/2+1/3+ +1/100 的值,請?zhí)羁铡ain( )int i;float sum=0 ;for(i=1;i101 ; i+)sum+ =1/i;printf (n” ,sum); 36、將輸入的百分制的分數(shù)轉(zhuǎn)換為相應(yīng)的等級并輸出,10090 分則為 a;8980 分則38 為 b;7970 分則為 c;6960 分則為 d;小于 60 分為 e,請?zhí)羁铡ain( ) int score,i;scanf(%d ,&scorer) ; i=score/10; switch(i ) case 10:case 9:printf(” a”);bresk; case 8:printf(b ) ; break;case 7:printf(” c”);break; case
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高新創(chuàng)業(yè)區(qū)物業(yè)管理協(xié)議
- 五年級下冊數(shù)學(xué)教案 -1.4 公因數(shù) ︳西師大版
- 2024-2025學(xué)年三年級下冊數(shù)學(xué) 一 除法《練習(xí)二》(教案)
- 六年級下冊數(shù)學(xué)教案 圖形的認識 北師大版
- 2025年貴陽康養(yǎng)職業(yè)大學(xué)單招職業(yè)技能測試題庫帶答案
- 化學(xué)-四川省金太陽2025屆高三2月開學(xué)考試試題和答案
- 2025年惠州城市職業(yè)學(xué)院單招職業(yè)技能測試題庫審定版
- 2025年廣西衛(wèi)生職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫一套
- 2025年湖北輕工職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫新版
- 2025年湖北科技職業(yè)學(xué)院單招職業(yè)傾向性測試題庫完整
- 運動康復(fù)機構(gòu)跌倒風(fēng)險管理措施
- 開學(xué)安全第一課主題班會課件
- 一年級珍惜糧食主題班會學(xué)習(xí)教案
- 殘疾人的就業(yè)創(chuàng)業(yè)與自我發(fā)展
- 全套課件-建筑工程質(zhì)量與安全管理
- 醫(yī)院感染的中心靜脈導(dǎo)管相關(guān)血流感染預(yù)防
- 新版《醫(yī)療器械經(jīng)營質(zhì)量管理規(guī)范》(2024)培訓(xùn)試題及答案
- 2025年人教版數(shù)學(xué)五年級下冊教學(xué)計劃(含進度表)
- DBJ33T 1286-2022 住宅工程質(zhì)量常見問題控制標準
- 海岸動力學(xué)英文課件Coastal Hydrodynamics-復(fù)習(xí)
- 碳足跡研究-洞察分析
評論
0/150
提交評論