


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、練習(xí)講解( 1)單項(xiàng)選擇以下選項(xiàng)中 , 不能作為合法常量的是 ( ) 。A、1.23E+04B、1.23E+00C、1.234e0.4D、1.23E+04答案: C語句 printf("#t#"); 在屏幕上的的輸出結(jié)果是( )A、#B、#C、#t#D、#t#答案: AC 源程序中不能表示的數(shù)制是 ( ) 。A、八進(jìn)制B二進(jìn)制C十六進(jìn)制D十進(jìn)制答案: B下面能正確表示變量在區(qū)間 0,8 或( 4,10 )內(nèi)的表達(dá)式為 ( )A、( a> =011 av =8) &&(a >4 II av 10)B a > =0&&a<
2、 =8 II a> 4&&av 10C、a> =0I av =8I a> 4I av 10D、a> =0&&av =8&&a> 4&&av 10答案: B當(dāng)變量c的值不為2、4、6時(shí),值也為“真”的表達(dá)式是A、(c=2) I (c=4) I (c=6)B、(c > =2&&cv =6)&&(c%2!=0)C、(c > =2&&cv =6) I (c!=3) I (c!=5)D、(c > =2&&cv =6)&&a
3、mp;!(c%2)答案: C已有定義 int a=-2; 和輸出語句 :printf("%8lx",a); 以下正確的敘述是 :( )A %x是格式符的一種,其變量的值按十六進(jìn)制輸出,但8lx是錯(cuò)誤的B整型變量的輸出格式符只有 (一種C、%x 是格式符的一種 , 它可以適用于任何一種類型的數(shù)據(jù)D、%8lx 不是錯(cuò)誤的格式符 , 其中數(shù)字 8規(guī)定了輸出字段的寬度答案: D當(dāng)把以下四個(gè)表達(dá)式用作 if 語句的控制表達(dá)式時(shí), 有一個(gè)選項(xiàng)與其它三個(gè)選項(xiàng)含義不同, 這個(gè)選項(xiàng)是( )A、!k%2=1B、k%2C、(k%2)!=0D、k%2=1答案: A以下敘述中錯(cuò)誤的是 ()。A C程
4、序中整型變量只能存放整數(shù),實(shí)型變量只能存放浮點(diǎn)數(shù)B C程序在運(yùn)行過程中所有計(jì)算都以十進(jìn)制方式進(jìn)行C所有C程序都需要編譯鏈接無誤后才能運(yùn)行D C程序在運(yùn)行過程中所有計(jì)算都以二進(jìn)制方式進(jìn)行答案: B設(shè)有語句"int a=4,b=3,c=-2,d=2;", 則邏輯表達(dá)式"a > 0&&b&&g 0&&d> 0"的值是 ( )。A、0B、1C、-1D出錯(cuò)答案: Bprintf("%d", 065 ); 的輸出結(jié)果為( )A、53B、65C、0D、6答案: A執(zhí)行語句: printf(
5、"%10.5fn",12345.678) ;的輸出是( )A、12345.6780B、12345.67800C、12345.678000D、12345.678 答案: B若x ,y均定義為int型,z定義為double型,以下不合法的seanf函數(shù)調(diào)用語句是:()A、scanf("%x%o%6.2f",&x,&y,&z);B、seanf(" %d%lx,%le",&x,&y,&z);C、seanf("%2d * %d%lf"&x,&y,&z )
6、;D、seanf("%x %* d%o",&x,&y);答案: A設(shè)C語言中,一個(gè)int型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié),則unsigned int型數(shù)據(jù)的取值范圍為 ( ) 。A 065535B 032767C、0 255D、0 2147483647答案: As1和S2表示是C語言的語句),只有一個(gè)在功能上與其它三 )。在下面的條件語句中(其中 個(gè)語句不等價(jià),它是(A、if(a) s1; else s2;B、if(a!=0) s1;else s2;C、if(a=0) s1; else s2;D、if(a=0) s2; else s1; 答案: C若有 “ int
7、a=1,x=1;” ,則循環(huán)語句“ while(a v 10) x+; a+;"的循環(huán)執(zhí)行()A、不確定次B、10次C無限次D、 9次答案: C以下選項(xiàng)中,不能用作數(shù)據(jù)常量的是 ()。A、118B、1.5e1.5C、0115D、115L答案: D設(shè)有定義: int a=2,b=3,e=4; 則以下選項(xiàng)中值為 0的表達(dá)式是( )A、(!a=1)&&(!b=0)B、aC、a&&bD a II (b+b)&&(c-a)答案: AA、 continue 語句只結(jié)束本次循環(huán),而不是終止整個(gè)循環(huán)的執(zhí)行。B、break 語句不能用于循環(huán)語句和swit
8、ch 語句之外的任何其他語句中。C、break 語句是結(jié)束整個(gè)循環(huán)過程,不再判斷執(zhí)行循環(huán)的條件是否成立。D、break和continue也可以用于if語句中答案: D以下敘述中正確的是( )A、簡(jiǎn)單C語句必須以分號(hào)結(jié)束B、C 程序中的每一行只能寫一條語句C、C 語句必須在一行內(nèi)寫完D、C 程序的基本組成單位是語句 答案: A判斷char型變量cl是否為大寫字母的表達(dá)式為(A、/ Az< =c1 v =/ ZB( cl > =/ A,) && (c1 < =/ Z ) C(/ A,< =c1) AND (/ Z,> =c1)D、(c1 > =
9、A ) & (c1< = Z )答案: B判斷題do-while 構(gòu)成的循環(huán),當(dāng) while 中的表達(dá)式的值為零時(shí)結(jié)束循環(huán) 答案:確在多層循環(huán)中 , 最內(nèi)層的 break 語句能直接跳出到最外層循環(huán)之外。 答案:誤多分支結(jié)構(gòu)中, switch 后的表達(dá)式必須為常量。 答案:誤邏輯運(yùn)算中,非運(yùn)算的優(yōu)先級(jí)優(yōu)于與運(yùn)算與或運(yùn)算。 答案:確printf() 的輸出項(xiàng)既可以是表達(dá)式和變量,也可以是常量和函數(shù)調(diào)用 答案:確條件運(yùn)算符的級(jí)別低于算術(shù)運(yùn)算符。 答案:確通常在輸入三個(gè)數(shù)據(jù)之間只需輸入一個(gè)空格將scanf("%d%d%d", &n1 , &n2 ,
10、&n3 ) ; 其分開;答案:確 條件表達(dá)式是C語言中唯一的二目運(yùn)算符。答案:確char m; m='B'+32; printf("%c",m); 輸出結(jié)果為 b。答案:確for 循環(huán)中,如果表達(dá)式 2為空,則該循環(huán)一定是死循環(huán),無法用任何手段跳出該循環(huán) 答案:誤case后可以是任意表達(dá)式。答案:誤字符型常量可以賦值給一個(gè)整型變量。答案:確輸出時(shí), %lf 表示輸出 double 浮點(diǎn)數(shù)。答案:確C語言的三種循環(huán)不可以互相嵌套。答案:誤選擇結(jié)構(gòu)中, if 后括號(hào)中的表達(dá)式只能是關(guān)系表達(dá)式。答案:誤如果為假 , 則終止循環(huán)。答案:確:在if語句中內(nèi)嵌的
11、語句以逗號(hào)作為每個(gè)語句的結(jié)束符號(hào)。答案:誤在if語句中,else的個(gè)數(shù)必須與if出現(xiàn)的個(gè)數(shù)相等。答案:誤'abc' 是字符常量。答案:誤在switch結(jié)構(gòu)中,必須有default標(biāo)號(hào)。答案:誤程序填空/*【程序填空】 功能:輸入n個(gè)數(shù),求這n個(gè)數(shù)中偶數(shù)的個(gè)數(shù)及平均值*/ #include <stdio.h>main()/*FILL*int i,n,m,float s=0;scanf("%d",&n);FILL*for(;i<=n;i+) scanf("%d",&m);FILL*if() a=a+1;s=s
12、+m ; FILL*printf("%f,%d",a);答案:位置1: a=0位置2: i=1 位置3: m%2=0【或】!(m%2)位置 4: s/a 【或】s*1.0/a【或】s*1./a/*【程序填空】功能:計(jì)算并輸出 500以內(nèi)能被 13或17整除的自然數(shù)之和 */#include <stdio.h>FILL*int fun()int i,s=0;FILL*for (i=1;i<=k;)FILL*if (i%13 = 0 | )s=s+i;FILL* main ( )printf("%dn", fun (500);答案:位置1
13、:int k 位置2 :i+【或】i=i+1【或】+i【或】i+=1【或】i=1+i位置 3 :!(i%17)【或】i%17 = 0【或】i/17*17=i位置 4 :return s【或】return (s)/*【程序填空】功能:從鍵盤上輸入若個(gè)數(shù),統(tǒng)計(jì)并輸出最大數(shù)和最小數(shù),當(dāng)輸入 負(fù)數(shù)時(shí)結(jié)束輸入。*/ #in clude "stdio.h" mai n()float x,amax,am in;/*Fill*/seanf("%f",);amax=x; amin=x;/*Fill*/while( ) if(x>amax) amax=x;/*Fill
14、*/if( ) amin=x;sea nf("%f", &x);/*Fill*/printf("nmax=%fnmin=%fn",amax,);答案:位置1:&x 位置2:x>=0【或】0<=x位置3:x<amin 【或】amin>x位置4:amin程序改錯(cuò)/*【程序改錯(cuò)】題目:輸入一個(gè)正實(shí)數(shù)eps,計(jì)算并輸出下式的值,直到最后一項(xiàng)小于eps當(dāng)eps輸入的值為0.0001時(shí)和值為0.227361135s=1x23x4*/#in elude <stdio.h>#include <math.h>
15、 main() double t=1.0/2,a=1,b=1,c=1,d=2,eps,s=0;ERROR*scanf("%lf",eps); while(fabs(t)>=eps) s=s+t;a=-a;b=b+2;c=c+1;d=d+1;ERROR*t=a*b/c*d;ERROR*printf("%d",s);t=(a*b)/(c*d);答案:位置 1:scanf("%lf",&eps); 位置 2:t=a*b/(c*d); 【或】 位置 3:printf("%lf",s); 【或】 printf(
16、"%f",s);/*【程序改錯(cuò)】 題目:輸入十個(gè)字符,統(tǒng)計(jì)其中的空格、回車和其它字符個(gè)數(shù)程序中共有 4條錯(cuò)誤語句,請(qǐng)改正錯(cuò)誤。注意:不可以增加或刪除程序行,也不可以更改程序的結(jié)構(gòu)*/ #include <stdio.h>main()char ch;ERROR*int i,num1,num2,num3;for(i=1;i<=10;i+)ERROR* getchar();if(ch=' ')num1=num1+1;ERROR*else if(ch='n')num2=num2+1;ERROR*else if num3=num3+1
17、; printf("空格=%d,回車=%d,其它=%dn", nu ml, nu m2, nu m3);答案:位置 1:int i,num1=0,num2=0,num3=0;位置 2: ch=getchar(); 位置 3:else if(ch='n')位置 4:else num3=num3+1;/*【程序改錯(cuò)】 題目:打印以下圖形*注意:不可以增加或刪除程序行,也不可以更改程序的結(jié)構(gòu)*/#include<stdio.h>main ( ) /*ERROR*int i,j;k;for (i=1;i<6;i+)/*ERROR*for(j=1;j
18、<=5;j+) printf(" ");ERROR*for(k=1;k<=5;k+)printf("*");ERROR*printf("n")位置 2:for(j=1;j<=5-i;j+)【或】 for(k=1;k<i+1;k+) 【或】 printf("n");或】 for(j=1;j<6-i;j+)答案:位置 1:int i,j,k; 位置 3:for(k=1;k<=i;k+) 位置 4:printf("n"); 練習(xí)講解( 2)、填空 共 15 題 (共
19、計(jì) 15 分) 第1題 (1.0分)若有定義 :char c='010'則變量 C 中包含的字符個(gè)數(shù)為【 1】答案: 1). 1第 2 題 ( 1.0 分)寫出語句 b=(a=6,a*3); 執(zhí)行后整型變量 b 的值是【 1】 . 答案: 1). 18第 3 題 ( 1.0 分)C 語言的三種基本結(jié)構(gòu)是【1】結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu).答案: 1). 順序 第4題 (1.0 分)執(zhí)行下面兩個(gè)語句 , 輸出的結(jié)果是【 1】,char c1=97,c2=98;printf("%d %c",c1,c2); 答案: 1). 97 b第 5 題 ( 1.0 分) 已知
20、a=13,b=6, a&&b 的十進(jìn)制數(shù)值為【 1】 . 答案: 1). 1第 6 題 ( 1.0 分) 假設(shè)變量 a,b 均為整型 , 表達(dá)式 (a=5,b=2,a>b?a+:b+,a+b) 的值是【 1】 .答案: 1). 8 第 7 題 ( 1.0 分)C語言表達(dá)式!(3<6)|(4<9) 的值是【1 . 答案: 1). 1第9題 (1.0 分) 以下程序的輸出結(jié)果為【 1 , #include "stdio.h" main()int a; for(a=0;a<10;a+);printf("%d",a);答案
21、: 1). 10第 10 題 (1.0 分)設(shè) i,j,k 均為 int 型變量 , 則執(zhí)行完 for 循環(huán) for(i=0,j=10;i<=j;i+,j-) k=i+j;后,k的值為【1 . 答案: 1). 10*第 11 題 (1.0 分) 程序段 int k=10;while(k=0) k=k-1 循環(huán)體語句執(zhí)行【 1 次 .答案: 1). 0 第 12 題 (1.0 分) 以下 do-while 語句中循環(huán)體的執(zhí)行次數(shù)是【 1 .a=10;b=0; do b+=2; a-=2+b; while (a>=0);答案: 1). 3第 13 題 (1.0 分) 若有以下數(shù)組 a,
22、 數(shù)組元素 :a0a9, 其值為9 4 12 8 2 10 7 5 1 3 該數(shù)組可用的最小下標(biāo)值是【1】 .答案: 1). 0第 14 題 ( 1.0 分)如果函數(shù)不要求帶回值 , 可用【 1】來定義函數(shù)返回值為空. 答案: 1). void第 15 題 ( 1.0 分)函數(shù)調(diào)用語句 func(e1,e2),(e3,e4,e5) 中含有【 1】個(gè)實(shí)參 .答案: 1). 2二、判斷 共 15 題 (共計(jì) 15 分)第1題 (1.0 分)在 C 程序中 , 每行中只能寫一條語句 答案: N第 2 題 ( 1.0 分)x*=y+8 等價(jià)于 x=x*(y+8). 答案: Y第 3 題 ( 1.0 分
23、)語句 scanf("%7.2f",&a); 是一個(gè)合法的 scanf 函數(shù) . 答案: N第4題 (1.0 分)若 i =3, 則 printf("%d",-i+); 輸出的值為 -4. 答案: N第 5 題 ( 1.0 分)在 switch-case 語句中 , 必須使用 default 語句 . 答案: N第 6 題 ( 1.0 分)關(guān)于 if 語句中 , 條件表達(dá)式只能是關(guān)系表達(dá)式或邏輯表達(dá)式 答案: N第 7 題 ( 1.0 分)continue 語句只結(jié)束本次循環(huán) , 而不是終止整個(gè)循環(huán)的執(zhí)行 .break 語句則是結(jié)束整個(gè)循環(huán)過程
24、不再判斷執(zhí)行循環(huán)的條件是否成立 .答案: Y第 8 題 ( 1.0 分)C語言中的for語句可以用于循環(huán)次數(shù)已經(jīng)確定的情況,但是不能用于循環(huán)次數(shù)不確定而只給岀循環(huán)結(jié)束條件的情況 .答案: N第 9 題 ( 1.0 分)char c="Very Good" 是一個(gè)合法的為字符串?dāng)?shù)組賦值的語句 . 答案: Y第 10 題 ( 1.0 分) 若有定義和語句 : int a33=3,5,8,9,12,35,i,sum=0;for(i=0;i<3;i+) sum+=ai2-i;則 sum=21.答案: Y第 11 題 ( 1.0 分)數(shù)組賦初值時(shí) , 初始值表中的數(shù)據(jù)項(xiàng)的數(shù)目可
25、以大于或等于數(shù)組元素的個(gè)數(shù).答案: N第 12 題 ( 1.0 分)C 語言中只能逐個(gè)引用數(shù)組元素而不能一次引用整個(gè)數(shù)組.答案: Y第 13 題 ( 1.0 分)如果函數(shù)值的類型和 return 語句中表達(dá)式的值不一致 , 則以 函數(shù)類型為準(zhǔn) .答案: Y第 14 題 ( 1.0 分)C程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)源程序文件中 答案: N第 15 題 ( 1.0 分)通過 return 語句 , 函數(shù)可以帶回一個(gè)或一個(gè)以上的返回值 . 答案: N三、單項(xiàng)選擇 共 20 題 (共計(jì) 40 分)第 1 題 ( 2.0 分)若 k,g 均為 int 型變量 , 則下列語句的輸出為 ().
26、 k=017; g=111;printf("%dt",+k); printf("%xn",g+);A:15 6fB:16 70C:15 71D:16 6f 答案: D第 2 題 ( 2.0 分) 下列語句的結(jié)果是 ().main()int j;j=3;printf("%d,",+j); printf("%d",j+);A:3,3B:3,4C:4,3D:4,4 答案: D 第 3 題 ( 2.0 分) 設(shè)以下變量均為 int 類型, 則值不等于 7的表達(dá)式是 ().A:(x=y=6,x+y,x+1)B:(x=y=6,
27、x+y,y+1)C:(x=6,x+1,y=6,x+y) D:(y=6,y+1,x=y,x+1) 答案: C第 4 題 ( 2.0 分) 下列程序段的輸出結(jié)果為 ().float k=0.8567;printf("%6.1f%",k*100);A:0085.6%B:85.7%C:0085.6%D:.857答案: B第 5 題 ( 2.0 分) 以下程序段的執(zhí)行結(jié)果是 ().double x;x=218.82631; printf("%-6.2fn",x);A:輸岀格式描述符的域?qū)挷粔駼: 輸出為 21.38e+01C: 輸岀為 218.83D: 輸岀為 2
28、18.82631 答案: C 第 6 題 ( 2.0 分) 以下程序的輸岀結(jié)果為 (). main()int i=010,j=10; printf("%d,%dn",+i,j-);A:11,10B:9,10C:010,9D:10,9 答案: B 第 7 題 ( 2.0 分) 為了避免在嵌套的條件語句 else 子句總是與 () 配對(duì) . A: 縮排位置相同的 if B: 其之前最近的尚未配對(duì)的 C: 其之后最近的 if D: 同一行上的 if 答案: B 第 8 題 ( 2.0 分) 下列運(yùn)算符中優(yōu)先級(jí)最高的是 A:<, 不能輸岀if-else 中產(chǎn)生二義性 ,C 語
29、言規(guī)定if().B:+C:&&D:!= 答案: B 第 9 題 ( 2.0 分)選擇結(jié)構(gòu)中的條件與循環(huán)結(jié)構(gòu)中循環(huán)成立的條件 , 在寫法上可以是任一表達(dá)式 , 但其值只能被判斷為"真" 或" 假".哪個(gè)數(shù)作為邏輯 " 假 "值().A:-1B:1C:非零的數(shù)D:0 答案: D 第 10 題 ( 2.0 分) 執(zhí)行語句 for(i=1;i+<4;);后變量 i 的值是 ().A:3B:4C:5D: 不定 答案: C 第 11 題 ( 2.0 分) 下列程序的輸出為 ().main() int y=10;while(y
30、-);printf("y=%dn",y);A:y=0B:while 構(gòu)成無限循環(huán)C:y=1D:y=-1 答案: D 第 12 題 ( 2.0 分) while(fabs(t)<1e-5) if(!s/10) break;循環(huán)結(jié)束的條件是 (). A:t>=1e-5&&t<=-1e-5&&s>-10&&s<10 B:fabs(t)<1e-5&&!s/10C:fabs(t)<1e-5 D:s/10=0 答案: A 第 13 題 ( 2.0 分)對(duì) for( 表達(dá)式 1; ;
31、 表達(dá)式 3) 可理解為 ().A: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) 答案: B第 14 題 ( 2.0 分) 語句 while(!E); 中的表達(dá)式 !E 等價(jià)于 ().A:E=0B:E!=1C:E!=0D:E=1答案: A第 15 題 ( 2.0 分)C 語言中 while 和 do-while 循環(huán)的主要區(qū)別是 ().A:do-while 的循環(huán)體至少無條件執(zhí)行一次B:while 的循環(huán)控制條件比 do-while 的循環(huán)控制條件
32、更嚴(yán)格C:do-while 允許從外部轉(zhuǎn)到循環(huán)體內(nèi)D:do-while 的循環(huán)體不能是復(fù)合語句答案: A第 16 題 ( 2.0 分)char a1="abc",a280="1234" 將 a1 串連接到 a2 串后面的語句是 ().A:strcat(a2,a1);B:strcpy(a2,a1);C:strcat(a1,a2);D:strcpy(a1,a2);答案: A第 17 題 ( 2.0 分)若 char a10; 已正確定義 , 以下語句中不能從鍵盤上給 a 數(shù)組的 所有元素輸入值的語句是 ().A:gets(a);B:scanf("%
33、s",a);C:for(i=0;i<10;i+)ai=getchar();D:a=getchar();答案: D第 18 題 ( 2.0 分)以下不能對(duì)二維數(shù)組 a 進(jìn)行正確初始化的語句是 ().A:int a23=0;B:int a3=1,2,0;C:int a23=1,2,3,4,5,6;D:int a3=1,2,3,4,5,6;答案: C第 19 題 ( 2.0 分)若有說明 : int a34=0; 則下面正確的敘述是 ().A: 只有元素 a00 可得到初值 0B: 此說明語句不正確C:數(shù)組a中各元素都可得到初值,但其值不一定為0D: 數(shù)組 a 中每個(gè)元素均可得到初值
34、 0答案: D第 20 題 ( 2.0 分)對(duì)以下說明語句 int a10=6,7,8,9,10;的正確理解是 ().A: 將 5 個(gè)初值依次賦給 a1 至 a5B:將5個(gè)初值依次賦給 a0至a4C: 將 5 個(gè)初值依次賦給 a6 至 a10D:因?yàn)閿?shù)組長(zhǎng)度與初值的個(gè)數(shù)不相同,所以此語句不正確答案: B五、程序設(shè)計(jì) 共 3 題 (共計(jì) 18 分) 第1題 (6.0 分)【程序設(shè)計(jì)】 題目:調(diào)用函數(shù) fun 判斷一個(gè)三位數(shù)是否 " 水仙花數(shù) "。在 main 函數(shù)中從鍵盤輸入一個(gè)三位數(shù),并輸出判 斷結(jié)果。請(qǐng)編寫 fun 函數(shù)。所謂 "水仙花數(shù) " 是指一
35、個(gè) 3 位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如, 153 是一個(gè)水仙花數(shù),fun 的因?yàn)?153等于 1的立方加上 5的立方加上 3的立方之和。 注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù) main 和其它函數(shù)中的任何內(nèi)容,僅在函數(shù) 花括號(hào)中填入所編寫的若干語句。*/ #include "stdio.h" int fun(int n) *Program* *main()int n,flag;scanf("%d",&n); flag=fun(n);if(flag)printf("%d是水仙花數(shù) n",n);elseprintf(
36、"%d不是水仙花數(shù) n",n);yzj();yzj()FILE *IN,*OUT;int iIN,i;int iOUT;IN=fopen("2.in","r");if(IN=NULL)printf("Please Verify The Currernt Dir.It May Be Changed"); OUT=fopen("2.out","w");if(OUT=NULL)printf("Please Verify The Current Dir. It May Be
37、 Changed"); for(i=0;i<10;i+) fscanf(IN,"%d",&iIN);iOUT=fun(iIN);fprintf(OUT,"%dn",iOUT);fclose(IN);fclose(OUT);答案: int bw,sw,gw;bw=n/100;sw=(n-bw*100)/10;gw=n%10;if(n=bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1;else return 0;第 2 題 ( 6.0 分)/*【程序設(shè)計(jì)】題目:從鍵盤為一維整型數(shù)組輸入 10 個(gè)整數(shù), 調(diào)用 f
38、un 函數(shù)找出其中最小的數(shù),并在main函數(shù)中輸出。請(qǐng)編寫 fun 函數(shù)。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù) main 和其它函數(shù)中的任何內(nèi)容,僅在函數(shù) fun 的花 括號(hào)中填入所編寫的若干語句。*/ #include "stdio.h" int fun(int x,int n) *Program* *main()int a10,i,min;for(i=0;i<10;i+)scanf("%d",&ai);for(i=0;i<10;i+)printf("%3d",ai);printf("n"
39、);min=fun(a,10);printf("%dn",min);getch();yzj();yzj()FILE *IN,*OUT;int iIN10,i;int iOUT,iCOUNT;IN=fopen("in.dat","r");if(IN=NULL)printf("Please Verify The Currernt Dir.It May Be Changed"); OUT=fopen("out.dat","w");if(OUT=NULL)printf("P
40、lease Verify The Current Dir. It May Be Changed"); for(i=0;i<5;i+) for(iCOUNT=0;iCOUNT<10;iCOUNT+) fscanf(IN,"%d",&iINiCOUNT);iOUT=fun(iIN,10);fprintf(OUT,"%dn",iOUT);fclose(IN);fclose(OUT);答案: int min,i;min=x0; for(i=1;i<n;i+) if(xi<min) min=xi; return min;第
41、 3 題 ( 6.0 分)/*【程序設(shè)計(jì)】題目:從鍵盤輸入一個(gè)大于 3 的整數(shù),調(diào)用函數(shù) fun 判斷 其是否素?cái)?shù),然后在 main 函數(shù)中輸出相應(yīng)的結(jié)論 信息。例如: 7 是素?cái)?shù), 8 不是素?cái)?shù)。請(qǐng)編寫 fun 函 數(shù)。素?cái)?shù)是僅能被 1 和自身整除的數(shù)注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù) main 和其它函數(shù)中的任何內(nèi)容,僅在函數(shù) fun 的花括號(hào)中填入所編寫的若干語句。*/ #include "stdio.h"main()int m,flag;printf("input an integer:");scanf("%d",&am
42、p;m);flag=fun(m);if(flag)printf("%d is a prime.n",m);elseprintf("%d is not a prime.n",m); yzj();int fun(int n)*Program*/* End */yzj()FILE *IN,*OUT;int iIN,iOUT,i;IN=fopen("5.in","r");if(IN=NULL)printf("Please Verify The Currernt Dir.It May Be Changed"
43、;); OUT=fopen("5.out","w");if(OUT=NULL)printf("Please Verify The Current Dir. It May Be Changed"); for(i=0;i<10;i+) fscanf(IN,"%d",&iIN);iOUT=fun(iIN);fprintf(OUT,"%dn",iOUT);fclose(IN);fclose(OUT);答案: int i;int j;j= 1;for(i=2;i<n;i+)if(n%i
44、=0) j= 0;return j;練習(xí)講解( 3)一、填空 共 8 題 (共計(jì) 8 分)第 1 題 ( 1.0 分) 題號(hào) :513 若有以下定義 , 則計(jì)算表達(dá)式 y+=y-=m*=y 后的 y 值是【 1】 .int m=5,y=2;答案:=( 答案 1)=-16第 3 題 ( 1.0 分) 題號(hào) :293 getchar() 函數(shù)只能接收一個(gè)【 1】 .答案:字符第 4 題 ( 1.0 分) 題號(hào) :437 以下程序的輸出結(jié)果為【 1】 ,#include "stdio.h" main()int a=010,j=10; printf("%d,%dn&quo
45、t;,+a,j-);答案: 9,10第 6 題 ( 1.0 分) 題號(hào) :303為了避免嵌套條件語句的二義性 ,C 語言規(guī)定 else 與其前面最近的尚未配對(duì)的【 1】語句配對(duì) 答案:if第 7 題 ( 1.0 分) 題號(hào) :311 若所用變量均已正確定義 , 則執(zhí)行下面程序段后的值是【 1】 .for(i=0 ; i<2 ; i+ ) printf("YES");printf("n");答案:YESYES第 8 題 ( 1.0 分) 題號(hào) :312以下程序段要求從鍵盤輸入字符 ,當(dāng)輸入字母為 'Y' 時(shí), 執(zhí)行循環(huán)體 ,則括號(hào)內(nèi)應(yīng)
46、填寫【 1】.ch=getchar();while(ch 'Y')/* 在括號(hào)中填寫 */ch=getchar();答案: 結(jié)果是 1 或者 0二、判斷 共 15 題 (共計(jì) 15 分)第 1 題 ( 1.0 分) 題號(hào) :937在 C 程序中 , 每行中只能寫一條語句答案: N第 3 題 ( 1.0 分) 題號(hào) :715整數(shù) -32100 可以賦值給 int 型和 long int 型變量 . 答案: Y第 4 題 ( 1.0 分) 題號(hào) :929在 C 語言中 ,5 種基本數(shù)據(jù)類型的存儲(chǔ)空間長(zhǎng)度的排列順序?yàn)?:char<int<long int <=flo
47、at<double答案: Y第 6 題 ( 1.0 分) 題號(hào) :194 若有定義和語句 :int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通過鍵盤輸入 :10,A,12.5, 則 a=10,c='A',f=12.5. 答案: Y第 7 題 ( 1.0 分) 題號(hào) :944C語言中,賦值表達(dá)式加上分號(hào)就構(gòu)成了賦值語句答案: Y第 8 題 (1.0 分) 題號(hào) :961C 語言本身并不提供輸入輸出語句 . 但可以通過輸入輸出函數(shù)來實(shí)現(xiàn)數(shù)據(jù)的輸入輸出 答案: Y第 9 題 (1.0
48、分) 題號(hào) :950邏輯運(yùn)算符中的 "&&" 和"|" 低于關(guān)系運(yùn)算符 ,"!" 高于算術(shù)運(yùn)算符 . 答案: Y第 10 題 (1.0 分) 題號(hào):951在執(zhí)行 switch 語句時(shí) ,default 和各個(gè) case 的出現(xiàn)次序不影響執(zhí)行結(jié)果 . 答案: Y第 11 題 (1.0 分) 題號(hào):723若 a=3,b=2,c=1 則關(guān)系表達(dá)式 "(a>b)=c"的值為 " 真".答案: Y第 12 題 (1.0 分) 題號(hào):709int i=20;switch(i/10)ca
49、se 2:printf("A");case 1:printf("B"); 的輸出結(jié)果為 A.答案: N第 13 題 (1.0 分) 題號(hào):742若有說明 int c; 則 while(c=getchar(); 是正確的 C 語句 . 答案: Y第 14 題 (1.0 分) 題號(hào) :954continue 語句只結(jié)束本次循環(huán) , 而不是終止整個(gè)循環(huán)的執(zhí)行 .break 語句則是結(jié)束整個(gè)循環(huán)過程 不再判斷執(zhí)行循環(huán)的條件是否成立 .答案: Y第 15 題 (1.0 分) 題號(hào) :952do-while 循環(huán)是先判斷循環(huán)條件表達(dá)式 , 后執(zhí)行循環(huán)體 ;while
50、 循環(huán)是先執(zhí)行循環(huán)體 , 后判斷循環(huán) 條件表達(dá)式 .答案: N三、單項(xiàng)選擇 共 20 題 (共計(jì) 40 分)第 2 題 ( 2.0 分) 題號(hào) :2209若變量已正確定義并賦值,下面符合C語言語法的表達(dá)式是().A:a:=b+1B:a=b=c+2C:int 18.5%3D:a=a+7=c+b答案: B第 3 題 (2.0 分) 題號(hào) :2000 以下的選擇中 , 正確的賦值語句是 ().A:a=1,b=2B:j+C:a=b=5;D:y=int(x)答案: C第 4 題 (2.0 分) 題號(hào) :2130下列字符序列中,是C語言保留字的是().A:sizeofB:includeC:scanfD:sqrt答案: A第 5 題 (2.0 分) 題號(hào) :2211 設(shè)以下變量均為 int 類型, 則值不等于 7 的表達(dá)式是 ().A:(x=y=6,x+y,x+1)B:(x=y=6,x+y,y+1)C:(x=6,x+1,y=6,x+y)D:(y=6,y+1,x=y,x+1)答案: C第 6 題 (2.0 分) 題號(hào) :2127 下列程序段的輸出結(jié)果為 ().float k=0.8567;printf("%4.1f%",k*100);A:0085.6%B:85.7%C:0085.6%D:.857答案: B第 9 題 ( 2.0 分) 題號(hào) :2039若 k
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醬酒品酒小知識(shí)培訓(xùn)課件
- 教學(xué)教研工作方案2025年支配
- 2025年上海市靜安區(qū)高三語文二模試卷(暫無答案)
- 出鏡記者與主持人實(shí)務(wù) 課件 第八章 現(xiàn)場(chǎng)出鏡與連線采訪
- 2025年奢侈品行業(yè)展望
- 2025年鄉(xiāng)鎮(zhèn)衛(wèi)生院工作方案
- 幼兒園教研工作方案2025年
- 2025年學(xué)期語文工作方案
- 初中教育方面的講座講稿
- 小學(xué)心理健康教育:樹立自信
- 中文產(chǎn)品手冊(cè)機(jī)架效果器tcelectronic-triplec manual chinese
- 新概念英語第三冊(cè)Lesson8 課件
- 人衛(wèi)版內(nèi)科學(xué)第九章白血?。ǖ?節(jié))
- 食堂設(shè)備維修記錄
- 江蘇省2022年普通高中學(xué)業(yè)水平選擇性考試物理試卷
- DB65∕T 4357-2021 草原資源遙感調(diào)查技術(shù)規(guī)程
- 幼兒園繪本:《閃閃的紅星》 紅色故事
- 植物生理學(xué)_第七版_潘瑞熾_答案
- FZ∕T 60021-2021 織帶產(chǎn)品物理機(jī)械性能試驗(yàn)方法
- 云南大學(xué)研究業(yè)績(jī)認(rèn)定與折算細(xì)則
- DG∕T 154-2022 熱風(fēng)爐
評(píng)論
0/150
提交評(píng)論