C語(yǔ)言考試試題基礎(chǔ)版(共21頁(yè))_第1頁(yè)
C語(yǔ)言考試試題基礎(chǔ)版(共21頁(yè))_第2頁(yè)
C語(yǔ)言考試試題基礎(chǔ)版(共21頁(yè))_第3頁(yè)
C語(yǔ)言考試試題基礎(chǔ)版(共21頁(yè))_第4頁(yè)
C語(yǔ)言考試試題基礎(chǔ)版(共21頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上一、選擇題1. 在每個(gè)C程序中都必須包含有這樣一個(gè)函數(shù),該函數(shù)的函數(shù)名為            。A. main           B. MAIN           C. name        &#

2、160;  D. function2. 在以下關(guān)于C語(yǔ)言的注釋的敘述中,不正確的是 。 A注釋可用"/*"、"*/"形式表示,也可用"/"形式表示 B編譯器在編譯一個(gè)程序時(shí),將跳過注釋,不對(duì)其進(jìn)行處理 C編譯器在編譯一個(gè)程序時(shí),可發(fā)現(xiàn)注釋中的單詞拼寫錯(cuò)誤 D程序中注釋的多少不會(huì)影響所生成的可執(zhí)行文件的長(zhǎng)度3. 以下敘述不正確的是 。 A在C程序中,嚴(yán)格區(qū)分大小寫字母 B一個(gè)C源程序有且僅有一個(gè)main函數(shù) C在C程序中,注釋只能位于一條語(yǔ)句的后面 D一個(gè)C程序總是從main函數(shù)開始執(zhí)行4. 下列合法的標(biāo)識(shí)符為 A.

3、 abde+ B. #KDJF C. 67KDJ D. DK3_5. 關(guān)于字符串和字符的關(guān)系正確的是 A. “A”與A是相同的B. 字符串是常量,字符是變量C. “A”與A是不同的D. “A ”與“A”是相同的if (x>y)z=x; s=z*z;elsez=y;s=1/(z*z);if (x>y)z=x; s=z*z;elsez=y;s=1/(z*z);6. 下面關(guān)于語(yǔ)句的說法正確的是 A. 下面這兩段程序的執(zhí)行效果是一致的B. 空語(yǔ)句是只有一個(gè)分號(hào)的語(yǔ)句,它其實(shí)什么也不干C. 語(yǔ)句的構(gòu)成不一定需要分號(hào)D. 語(yǔ)句的書寫對(duì)程序的運(yùn)行不起作用,因此可以隨便寫都可以7. 以下各標(biāo)識(shí)符中

4、,合法的用戶標(biāo)識(shí)符組為 。A. PAd,P#d,b-b,abc,_0123,ssipedB. cin,a10,CPP,float,del_word,signedC. void,max,hiy,<fr>,list,*jerD. a,temp,_isw,INT,keep,wind8. 字符串“”EOF= -61”的長(zhǎng)度是 。A 8 B 9 C 12 D 非法字符串9. 數(shù)學(xué)式在C程序中對(duì)應(yīng)的不正確的表達(dá)式為 。 Asqrt(sin(x)>0?sin(x):-sin(x) Bsqrt(fabs(sinx) Csqrt(sqrt(sinx*sinx) Dfabs(sqrt(sin(x

5、)10. 下列 是C語(yǔ)言的有效標(biāo)識(shí)符?A_No1BNo.1 C12345 Dint11. C語(yǔ)言中,表示一條語(yǔ)句結(jié)束的標(biāo)號(hào)是 A# B; C/ D12. 每個(gè)C程序中都必須有且僅有一個(gè) A類B預(yù)處理命令 C主函數(shù)D語(yǔ)句13. 下列數(shù)據(jù)類型不是C語(yǔ)言基本數(shù)據(jù)類型的是 。A字符型 B整型 C實(shí)型 D數(shù)組14. 下列字符列中,可作為C語(yǔ)言程序自定義標(biāo)識(shí)符是 。 Aswitch Bfile Cbreak Ddo 15. 運(yùn)算符 +、<=、=、% 中,優(yōu)先級(jí)最低的運(yùn)算符是 。 A + B<= C= D% 16. 下列字符列中,可以作為“字符串常量”的是 。 A ABC Bxyz Cuvw D

6、 a 17. 字符串"vmx43np102q"的長(zhǎng)度是 。A 8 B 10 C 17 D 16 18.  在C語(yǔ)言中,自定義的標(biāo)識(shí)符 。A能使用關(guān)鍵字并且不區(qū)分大小寫B(tài)不能使用關(guān)鍵字并且不區(qū)分大小寫C能使用關(guān)鍵字并且區(qū)分大小寫D不能使用關(guān)鍵字并且區(qū)分大小寫19. 設(shè)x和y均為邏輯型變量,則x && y為真的條件是             。A. 它們均為真    B. 其中一個(gè)為真   &#

7、160; C. 它們均為假     D. 其中一個(gè)為假20. 若給定條件表達(dá)式(m)?(a+): (a-),則其中表達(dá)式m 。 A. 和(m= =0)等價(jià) B. 和(m= =1)等價(jià) C. 和(m!=0)等價(jià) D. 和(m!=1)等價(jià)21. 在if語(yǔ)句中,用作判斷的表達(dá)式為 。 A. 關(guān)系表達(dá)式 B. 邏輯表達(dá)式 C. 算術(shù)表達(dá)式 D. 任意表達(dá)式22. 設(shè)i和k都是int類型,則以下for循環(huán)語(yǔ)句 。 for ( i=0, k= -1; k=1; i+, k+ ) printf("*n"); A. 判斷循環(huán)結(jié)束的條件不合法 B. 是

8、無限循環(huán) C. 循環(huán)體一次也不執(zhí)行 D. 循環(huán)體只執(zhí)行一次23. 若有以下語(yǔ)句,則輸出結(jié)果為 。 int a=2,b=1; string s1; s1= a>b?"a大于b":"a小于b" printf("%sn", s1); A. a大于b B. a小于b C. 1 D. 輸出語(yǔ)句有錯(cuò)24. int k=10;while(k=0) k=k-1;則下面描述正確的是 。A. while循環(huán)執(zhí)行10次 B. 循環(huán)是無限循環(huán)C. 循環(huán)體語(yǔ)句一次也不執(zhí)行 D. 循環(huán)體語(yǔ)句執(zhí)行一次25. int a=1,b=2,c=2,t;while(a

9、<b) t=a;a=b;b=t;c-;printf("%d,%d,%dn",a,b,c);運(yùn)行結(jié)果為 。A. 1,2,0 B. 2,1,0 C. 1,2,1 D. 2,1,126. int x=-1;do x=x*x;while(!x);下列說法正確的是 。A. 是死循環(huán) B. 循環(huán)執(zhí)行兩次C. 循環(huán)執(zhí)行一次 D. 有語(yǔ)法錯(cuò)誤27.  以下能正確計(jì)算1*2*3*10的程序段是 。A.     do i=1;s=1; B. do i=1;s=0;s=s*i; i+; s=s*i;i+; while(i<=10);

10、while(i<=10);C. i=1;s=1; D. i=1;s=0; do s=s*i; dos=s*i;i+; i+;while(i<=10); while(i<=10);28. 以下描述正確的是 。A. 由于do-while循環(huán)中循環(huán)體語(yǔ)句只是一條可執(zhí)行語(yǔ)句,所以循環(huán)體內(nèi)不能使用復(fù)合語(yǔ)句B. do-while循環(huán)由do開始,用while結(jié)束,在while(表達(dá)式)后面不能寫分號(hào)C. 在do-while循環(huán)體中,一定要有能使while后面表達(dá)式的值變?yōu)榱悖ā凹佟保┑牟僮鱀. do-while循環(huán)中,根據(jù)情況可以省略while29. while和do-while循環(huán)的主要

11、區(qū)別是 。A. do-while的循環(huán)體至少無條件執(zhí)行一次B. while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴(yán)格C. do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)D. do-while的循環(huán)體不能是復(fù)合語(yǔ)句30. 下面有關(guān)for循環(huán)的正確描述是 。A. for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況B. for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判斷表達(dá)式C. for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體D. for循環(huán)的循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但必須用花括號(hào)括起來31. 對(duì)for(表達(dá)式1; ;表達(dá)式3)可理解為 。A. for(表達(dá)式1;0;表達(dá)式3) B. for(表達(dá)式1;1;表達(dá)式3)

12、C. for(表達(dá)式1;表達(dá)式1;表達(dá)式3)D. or(表達(dá)式1;表達(dá)式3;表達(dá)式3)32. 在C編程語(yǔ)言中,以下正確的描述是 。A. continue語(yǔ)句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行B. 只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句C. 在循壞體內(nèi)使用break語(yǔ)句或continue語(yǔ)句的作用相同D. 從多層循環(huán)嵌套中退出,只能使用goto語(yǔ)句33. 下面程序段 。for(t=1;t<=100;t+) scanf("%d",&x); if(x<0) continue; printf("%dn",t);A. 當(dāng)x<0時(shí)整

13、個(gè)循環(huán)結(jié)束 B. x>=0時(shí)什么也不輸出C. cout永遠(yuǎn)也不執(zhí)行 D. 最多允許輸出100個(gè)非負(fù)整數(shù)34. 定義一個(gè)函數(shù)實(shí)現(xiàn)交換x和y的值,并將結(jié)果正確返回。能夠?qū)崿F(xiàn)此功能的是 。A. swap(int x, int y) int t; t=x; x=y; y=t; B. swap(int *x, int *y) int t; t=x; x=y; y=t; C. swap(int *x, int *y) int t; t= *x; *x = *y; *y=t; D. swap(int *x, int *y) int *t; t=x; x=y; y=t; 35. 若有代數(shù)式3ae/bc,

14、則不正確的C語(yǔ)言表達(dá)式是 。A. a/b/c*e*3 B. 3*a*e/b/cC. 3*a*e/b*c D. a*e/c/b*336. 以下表達(dá)式值為3的是 。A. 16-13%10 B. 2+3/2C. 14/3-2 D. (2+6)/(12-9)37. 設(shè)有說明語(yǔ)句,int k=7, x=12;則以下能使值為3的表達(dá)式是 。A. x%=(k%=5) B. x%=(k-k%5)C. x%= k-k%5 D. (x%=k)-(k%=5)38. 若有條件表達(dá)式(exp)? A+: b-,則以下表達(dá)式中能完全等價(jià)于表達(dá)式(exp)的是 。A. (exp= =0) B. (exp!=0) C. (e

15、xp= =1) D. (exp!=1)39. 設(shè)有以下語(yǔ)句:typedef struct REC char c; int a4; REC1;則下面敘述中正確的是 。A可以用REC定義結(jié)構(gòu)體變量BREC1是struct REC類型的變量CREC是struct類型的變量D可以用REC1定義結(jié)構(gòu)體變量40. 下列關(guān)于結(jié)構(gòu)的語(yǔ)法錯(cuò)誤的是A結(jié)構(gòu)是由用戶自定義的一種數(shù)據(jù)類型B結(jié)構(gòu)中可設(shè)定若干個(gè)不同數(shù)據(jù)類型的成員C結(jié)構(gòu)中成員的數(shù)據(jù)類型可以是另一個(gè)已定義的結(jié)構(gòu)D在定義結(jié)構(gòu)時(shí),可以為成員設(shè)置默認(rèn)值41. 以下關(guān)于結(jié)構(gòu)體的敘述中,錯(cuò)誤的是 。A結(jié)構(gòu)體是一種可由用戶構(gòu)造的數(shù)據(jù)類型B結(jié)構(gòu)體中的成員可以具有不同的數(shù)據(jù)類

16、型C結(jié)構(gòu)體中的成員不可以與結(jié)構(gòu)體變量同名D結(jié)構(gòu)體中的成員可以是指向自身結(jié)構(gòu)的指針類型42. 說明一個(gè)結(jié)構(gòu)體變量時(shí),系統(tǒng)分配給它的內(nèi)存是 。A各成員所需內(nèi)存量的總和B結(jié)構(gòu)中第一個(gè)成員所需內(nèi)存量C成員中占內(nèi)存量最大者所需的容量D結(jié)構(gòu)中最后一個(gè)成員所需內(nèi)存量43. 設(shè)有以下說明語(yǔ)句:struct stu int a; float b; stutype;則下面的敘述不正確的是 。Astruct是結(jié)構(gòu)體類型的關(guān)鍵字Bstruct stu是用戶定義的結(jié)構(gòu)體類型名Cstutype是用戶定義的結(jié)構(gòu)體類型名Da 和 b都是結(jié)構(gòu)體成員名44. 若有如下定義struct data int x,y; test1=10

17、,20, test2;則以下賦值語(yǔ)句中錯(cuò)誤的是 。A. test2=test1; B. test2.x=test1.x;C. test2.x=test1.y D. test2=30,40;45. 以下對(duì)結(jié)構(gòu)體變量stu1中成員age的非法引用是 。struct student int age; int num; stu1,*p;p=&stu1;A. stu1.age B. student.age C. p->age D. (*p).age46. 當(dāng)說明一個(gè)共用體變量時(shí),系統(tǒng)分配給它的內(nèi)存是 。A. 各成員所需內(nèi)存量的總合B結(jié)構(gòu)中第一個(gè)成員所需內(nèi)存量C成員中占內(nèi)存量最大者所需的容量

18、D結(jié)構(gòu)中最后一個(gè)成員所需內(nèi)存量47. 以下對(duì)C語(yǔ)言中共用體類型數(shù)據(jù)的敘述正確的是 。A可以對(duì)共用體變量名直接賦值B一個(gè)共用體變量中可以同時(shí)存放其所有成員C一個(gè)共用體變量中不能同時(shí)存放其所有成員D共用體類型定義中不能出現(xiàn)結(jié)構(gòu)體類型的成員48. 若有以下定義和語(yǔ)句:union data int i; char c; float f; a;int n;則以下語(yǔ)句正確的是 。Aa=5; B. a=2,a,1.2C. printf(“%dn”,a); D. n=1;49. 設(shè)有以下說明,則下面不正確的敘述是 。union int i; char c; float f; un;A. un所占的內(nèi)存長(zhǎng)度等于

19、成員f的長(zhǎng)度Bun的地址和它的成員地址都是同一地址Cun可以作為函數(shù)參數(shù)D不能對(duì)un賦值,但可以在定義un時(shí)對(duì)它初始化50. C語(yǔ)言共用體類型變量在程序運(yùn)行期間A所有成員一直駐留在內(nèi)存中B只有一個(gè)成員駐留在內(nèi)存中C部分成員駐留在內(nèi)存中D沒有成員駐留在內(nèi)存中51. 使用typedef定義一個(gè)新類型的正確步驟是 。A(2)、(4)、(1)、(3) B. (1)、(3)、(2)、(4)C(2)、(1)、(4)、(3) D. (4)、(2)、(3)、(1)(1) 把變量名換成新類型名(2) 按定義變量的方法寫出定義體(3) 用新類型名定義變量(4) 在最前面加上關(guān)鍵則typedef52. 下面對(duì)typ

20、edef的敘述中不正確的是 。A用typedef可以定義各種類型名,但不能用來定義變量B用typedef可以增加新類型C用typedef只是將已存在的類型用一個(gè)新的標(biāo)識(shí)符來代表D使用typedef有利于程序的通用和移植53. 下面試圖為double說明一個(gè)新類型名real的語(yǔ)句中,正確定是 。Atypedef real double;B. typedef double real;C. typedef real=double;D. typedef double=real;54. 下面能正確進(jìn)行字符串賦值操作的是 。A. char s5=“ABCDE”; B. char s5=A, B, C, D

21、, E;C. char *s; s=“ABCDE”; D. char *s; scanf(“%s”,s);55. 下面程序段的運(yùn)行結(jié)果是 。char *s=”abcde”;s+=2; printf(“%d”,s);A. cde B. 字符c C. 字符c的地址 D. 無確定的輸出結(jié)果56. 下面程序段的運(yùn)行結(jié)果是 。char str =”ABC”, *p=str;printf(“%dn”, *(p+3);A. 67 B. 0 C. 字符C的地址 D.字符C57. 下面程序段的運(yùn)行結(jié)果是 。char a =”language”, *p;p=a;while(*p!=u)printf(“%c”,*p

22、-32); p+;A. LANGUAGE B. language C. LANG D. langUAGE58. 有如下說明語(yǔ)句,則以下不正確的敘述是 。char a =”It is mine”;char *p=”It is mine”;A. a+1表示的是字符t所在存儲(chǔ)單元的地址Bp指向另外的字符串時(shí),字符串的長(zhǎng)度不受限制Cp變量中存放的地址值可以改變Da中只能存放10個(gè)字符答案:1A 2C 3C 4D 5C 6B 7D 8A9B 10A 11B 12C 13D 14B 15C 16B 17A 18D 19A 20C 21D 22B 23A24C 25D 26C 27C 28C 29A 30D

23、 31B32B 33D 34C35C 36B 37. D 38. B 39. D 40. D 41. C 42. A43. C 44. D 45. B 46.C 47.C 48.B 49.C 50.B 51.C52. B 53. B 54.C 55.C 56. B 57. C 58. D二、填空題1. 程序的三種基本的控制結(jié)構(gòu)是: 、 、 。2. C語(yǔ)言中的每條基本語(yǔ)句以             作為結(jié)束符,每條復(fù)合語(yǔ)句以    

24、60;      作為結(jié)束符。3. 關(guān)系表達(dá)式x+y>5的相反表達(dá)式為                          。4. 下面的程序段中循環(huán)體的執(zhí)行次數(shù)是 。a=10;b=0;dob+=2;a-=2+b; while(a>=0);5. 下面程序段的運(yùn)行結(jié)果為 。x=2;

25、doprintf("*"); x-; while(!x=0);6. 已知int a32=3, 2, 1; 則表達(dá)式“a00/a01”的值是 。7. 若用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,則實(shí)際上傳遞給形參的是 。8. 如果一個(gè)函數(shù)無返回值,定義它時(shí)函數(shù)類型應(yīng)是 。9. 預(yù)處理命令以 開頭。10. 指針類型變量用于存儲(chǔ) ,在內(nèi)存中它占有一個(gè)存儲(chǔ)空間。11. 賦值語(yǔ)句在執(zhí)行時(shí)先計(jì)算 ,再將該值轉(zhuǎn)換成與 一致的值,并將值賦給左部變量。12. 在程序中else總是與 的if配對(duì),而不管程序的書寫格式如何。13. 在函數(shù)中使用 語(yǔ)句返回值。14. 函數(shù)的形參在未被調(diào)用前 分配空間,函數(shù)形參

26、的 要和實(shí)參相同。15. 函數(shù)調(diào)用一般分 、 ,前者的特點(diǎn)是形參和實(shí)參各有獨(dú)立的存儲(chǔ)空間,形參的存儲(chǔ)空間在函數(shù)被調(diào)用時(shí)才分配,形參內(nèi)容的變化不影響實(shí)參,后者的特點(diǎn)是形參實(shí)參共用一個(gè)存儲(chǔ)空間,形參內(nèi)容的改變可以改變實(shí)參值。16. 在傳值調(diào)用中,實(shí)際是把實(shí)參的 傳給形參。17. int a3=3; 則a2= 。18. int a3=1, 3, 5, 7; 則 。19. 數(shù)組由 和 構(gòu)成,其數(shù)組元素的數(shù)據(jù)類型是 。20. 聲明長(zhǎng)度為10的float型數(shù)組a,且初始化為0的語(yǔ)句是: 。21. 指針是存放一個(gè)變量的 的變量。22. 當(dāng)數(shù)組名作形參時(shí),相當(dāng)于 。23. 要訪問數(shù)組元素可以采用 、 、 。2

27、4. 定義一個(gè)指針p,它指向一個(gè)有6個(gè)整型元素的一維數(shù)組,定義語(yǔ)句為 。25. 定義一個(gè)指針數(shù)組p,它有4個(gè)元素,每個(gè)指針指向一個(gè)整型數(shù)據(jù),定義語(yǔ)句為 。26. 指針可以指向字符串,在定義一個(gè)字符型指針時(shí),可以給它初始化,目的是把字符串的 放入指針變量。27. 指針可以指向函數(shù),這時(shí)它所指的是函數(shù)的 。28. C語(yǔ)言的源程序必須通過 和 后,才能被計(jì)算機(jī)執(zhí)行。29. C語(yǔ)言源程序文件的后綴是 ;經(jīng)過編譯后,生成文件的后綴是 ;經(jīng)過連接后,生成文件的后綴是 。30. 在C語(yǔ)言中,表示邏輯“真”值用 。31. 設(shè)y為int型變量,請(qǐng)寫出描述“y是奇數(shù)”的表達(dá)式 。32. C語(yǔ)言提供的3種邏輯運(yùn)算符

28、是 、 和 。33. 若x、y、z均為int型變量,則描述“x或y中有一個(gè)小于z”的表達(dá)式是 。34. 設(shè)a、b、c均為int型變量且a=7.5, b=2,c=3.6, 則表達(dá)式a>b && c>a | a<b && !c>b 的值是 。35. 設(shè)a、b、c均為int型變量且a=6, b=4,c=2, 則表達(dá)式!(a-b)+c-1 && b+c/2的值是 。36. 設(shè)a、b均為int型變量且a=2, b=4, 則表達(dá)式!(x=a) | (y=b) && 0的值是 。37. 設(shè)a、b、c均為int型變量且a=

29、1, b=4,c=3, 則表達(dá)式!(a<b) | !c && 1的值是 。38. 若有條件“2<x<3或x<-10”,其對(duì)應(yīng)的C語(yǔ)言表達(dá)式是 。答案:1. 順序結(jié)構(gòu) 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu)2. ; 3. x+y<=54. 35. *6. 17. 數(shù)組首地址8. 內(nèi)置函數(shù)9. #10. 所指變量的地址11. 表達(dá)式的值 左部變量類型12. 它前面最近且未配對(duì)13. return14. 不 類型及數(shù)量15. 傳值調(diào)用 傳址調(diào)用16. 值17. 018. 會(huì)出錯(cuò)19. 數(shù)組名 下標(biāo) 相同的20. float a10=0;21. 地址22. 指針23. 下標(biāo)法

30、 地址法 指針法24. int (*p)625. int *p426. 首地址27. 入口地址28. 編譯 連接29. c obj exe30. 非0數(shù)字31. (y%2)= =132. && | !33. x<z | y<z34. 035. 136. 037. 038. x<3 && x>2 | x<-10三、填空完成下面的程序1. 以下程序的功能是:輸出x,y,z三個(gè)數(shù)中的最大者。請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) int x=4, y=6, z=7; int u,v ; if( x&

31、gt;y ) u=x; else u=y; if( u>z ) v=u; else v=z; printf(“v=%d”,v); return 0;2.以下程序的功能是:輸入3個(gè)整數(shù),按從大到小的順序進(jìn)行輸出。請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) int x,y,z,c; scanf(“%d%d%d”,&x,&y,&z); if( y<z ) c=y;y=z;z=c; if( x<z ) c=x;x=z;z=c; if( x<y ) c=x;x=y;y=c; printf(“%d,%d,%d”,x,y,z

32、); return 0;3.以下程序的功能是:輸入一個(gè)字符,如果它是一個(gè)大寫字母,則把它變成小寫字母;如果它是一個(gè)小寫字母,則把它變成大寫字母;其他字符不變。請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) char ch; scanf(“%c”,&ch); if( ch>=A && ch<=Z ) ch=ch+32; else if ( ch>=a && ch<=z ) ch=ch-32; printf(“%c”,ch); return 0;4.以下程序的功能是:根據(jù)輸入的三角形的三條邊,判斷是否能

33、組成三角形,若可以則輸出它的面積和三角形的類型。請(qǐng)?zhí)羁铡?include <stdio.h>#include<math.h>int main( ) float a,b,c; float s,area; scanf(“%f%f%f”,&a,&b,&c); if( a+b>c && b+c>a && a+c>b ) s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c); printf(“%f”,area); if( a= =b && b= =c ) pr

34、intf(“等邊三角形”); else if ( (a= =b && b!=c) | (a= =c && c!=b) | (c= =b && a!=c) ) printf(“等腰三角形”); else if(a*a+b*b=c*c) | (a*a+c*c=b*b) | (b*b+c*c=a*a) printf(“直角三角形”); else printf(“一般三角形”); else printf(“不能組成三角形”); return 0;5. 將以下含有switch語(yǔ)句的程序段改寫成對(duì)應(yīng)的含有非嵌套if語(yǔ)句的程序段。請(qǐng)?zhí)羁?。含有switch語(yǔ)句的

35、程序段:int x,y,m;y=(int)(x/10);switch(y) case 10: m=5;break;case 9: m=4;break;case 8: m=3;break;case 7: m=2;break;case 6: m=1;break;default: m=0;含有非嵌套if語(yǔ)句的程序段:int x,m;if( x<110 && x>=100 ) m=5;if(x<100 && x>=90) m=4;if(x<90 && x>=80) m=3;if(x<80 && x

36、>=70) m=2;if(x<70 && x>=60) m=1;if( x<60 | x>=110 ) m=0; 6. 根據(jù)以下給出的嵌套if語(yǔ)句,填寫對(duì)應(yīng)的switch語(yǔ)句,使它完成相同的功能。(假設(shè)mark的取值在1100之間。)if語(yǔ)句:if(mar<60) k=1;else if( mark<70) k=2;else if( mark<80) k=3;else if( mark<90) k=4;else if( mark<=100) k=5;switch語(yǔ)句:switch( (int)(mark/10) )ca

37、se 0: case 1: case 2: case 3: case 4: case 5: k=1;break;case 6: k=2; break;case 7: k=3;break;case 8: k=4;break;case 9: case 10: k=5; 7. 下面程序的功能是從鍵盤輸入若干學(xué)號(hào),然后輸出學(xué)號(hào)中百位數(shù)字是3的學(xué)號(hào)(輸入0時(shí)結(jié)束循環(huán)),請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) long int num; scanf(“%ld”,&num); do if (num/100%/10= =3) pringf(“%ld”,num);

38、scanf(“%ld”,&num); while (num!=0) ;return 0;8. 下面程序的功能是計(jì)算正整數(shù)2345的各位數(shù)字的平方和,請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) int n=2345,sum=0; do sum=sum+ (n%10)*(n%10) ;n= n/10 ;while(n);printf(“sum=%d”,sum);return 0;9. 下面程序的功能是求算式xyz+yzz=532中的x,y,z的值(其中xyz和yzz分別表示一個(gè)三位數(shù)),請(qǐng)?zhí)羁铡?include <stdio.h>int ma

39、in( ) int x,y,z,I,result=532; for(x=1;x<10;x+)for(y=1;y<10;y+) for( z=0 ; z<10; z+) i=100*x+10*y+z+100*y+10*z+z; if (i= =result) printf(“x=%d,y=%d,z=%dn”,x,y,z); return 0;10.有1020個(gè)西瓜,第一天賣一半多兩個(gè),以后每天賣剩下的一半多兩個(gè),下面的程序統(tǒng)計(jì)買完所需的天數(shù),請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) int day=0, x1=1020, x2; while

40、 (x1) x2= x1/2-2 ;x1=x2;day+; printf(“day=%dn”,day);return 0;11.下面的程序的功能是用do-while語(yǔ)句求11000之間滿足“用3除余2,用5除余3,用7除余2”的數(shù),且一行只打印5個(gè)數(shù),請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) int i=1,j=0; do if (i%3= =2 && i%5= =3 && I%7= =2) printf(“%4d”,i); j+; if (j%5= =0) printf(“n”); i=i+1; while(i<10

41、00);return 0;12.下面程序的功能是求1000以內(nèi)的所有完全數(shù)。請(qǐng)?zhí)羁?。(說明:一個(gè)數(shù)如果恰好等于它的因子之和(除自身外),則稱該數(shù)為完全數(shù)。例如:6=1+2+3,6為完全數(shù))#include <stdio.h>int main( ) int a,k,m; for(a=1;a<=1000;+) for( m=0, k=1 ; k<=a/2;k+) if(!(a%k) m=m+k; if(m= =a) printf(“%4d”,a); return 0;13.下面的程序是從鍵盤輸入的10個(gè)整數(shù)中,找出一個(gè)能被7正處的數(shù),若找到,打印次數(shù);若未找到,打印not

42、exist。請(qǐng)?zhí)羁铡?include <stdio.h>int main( ) int k,a; for(k=1;k<=10;k+) scanf(“%d”,&a); if(a%7= =0) break; if (k<=10) printf(“%dn”,a); else printf(“not existn”);return 0;四、給出下列程序運(yùn)行后的輸出結(jié)果1. 當(dāng)a=1,b=3,c=5,d=4時(shí),執(zhí)行以下程序段后x的值是 2 。if (a<b) if(c<d) x=1; elseif(a<c) if(b<d) x=2; else x=

43、3;else x=6; else x=7;2. 以下程序的輸出是 -1 。#include <stdio.h>int main( ) int a=100,x=10,y=20,ok1=5,ok2=0; if(x<y) if(y!=10)if(!ok1) a=1;else if(ok2) a=10; a=-1; printf(“%dn”,a);return 0;3. 以下程序的輸出是 2 。#include <stdio.h>int main( ) int x=2,y=-1,z=2; if(x<y)if(y<0) z=0;else z+=1; printf

44、(“%dn”,z);return 0;4. 以下程序的輸出是 OK 。#include <stdio.h>int main( ) int x=1; if(x=2)printf(“OK”); else if(x<2) pirntf(“%dn”,x); else printf(“Quit”);return 0;5. 若運(yùn)行時(shí)為變量x輸入12,則以下程序的運(yùn)行結(jié)果是 0 。#include <stdio.h>int main( ) int x, y; scanf(“%d”,&x); y=x>12? X+10: x-12; printf(“%dn”,y);r

45、eturn 0;6. 若運(yùn)行時(shí)輸入:2<回車>,則以下程序的運(yùn)行結(jié)果是 2nd class postage is 14p 。#include <stdio.h>int main( ) char class;printf(“Enter 1 for 1st class post or 2 for 2nd post”);scanf(“%c”,&class);if(calss= =1) printf(“1st class postage is 19p”);else printf(“2nd class postage is 14p”);return 0;7. 若運(yùn)行時(shí)輸入4.4<回車>,則以下程序的運(yùn)行結(jié)果是 Selling Price(0.3)$ 5.72 。#include <stdio.h>int main( ) f

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論