2017年C語(yǔ)言實(shí)驗(yàn)與習(xí)題集_第1頁(yè)
2017年C語(yǔ)言實(shí)驗(yàn)與習(xí)題集_第2頁(yè)
2017年C語(yǔ)言實(shí)驗(yàn)與習(xí)題集_第3頁(yè)
2017年C語(yǔ)言實(shí)驗(yàn)與習(xí)題集_第4頁(yè)
2017年C語(yǔ)言實(shí)驗(yàn)與習(xí)題集_第5頁(yè)
已閱讀5頁(yè),還剩86頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2011年C語(yǔ)言實(shí)驗(yàn)與習(xí)題集目 錄一、前言:2二、福建省高等學(xué)校計(jì)算機(jī)應(yīng)用水平等級(jí)考試考試大綱3三、理論習(xí)題61.第一章62.第二章(略)73.第三章 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式74.第四章、第五章 程序控制結(jié)構(gòu)(分支、循環(huán)語(yǔ)句)135.第六章 數(shù)組(數(shù)組概念、二維數(shù)組、字符數(shù)組)196.第七章 函數(shù)247.第八章 善于利用指針258.第九章 第十章(結(jié)構(gòu)體、共用體、文件及其他)299.宏、預(yù)處理命令、位運(yùn)算及其他31四、章節(jié)編程訓(xùn)練331.數(shù)據(jù)類型、運(yùn)算符與表達(dá)式332.分支語(yǔ)句編寫程序,使其計(jì)算以下分段函數(shù)353.循環(huán)364.指針與數(shù)組44五、真題訓(xùn)練561.編程題562.填空題:683.改

2、錯(cuò)題:80一、 前言:C是最常見(jiàn)的一種高級(jí)程序設(shè)計(jì)語(yǔ)言,高等院校理工科專業(yè)都開(kāi)設(shè)“C程序設(shè)計(jì)”課程作為程序設(shè)計(jì)入門語(yǔ)言。為此,福建省高校計(jì)算機(jī)水平考試委員會(huì)將其列入福建省高等院校計(jì)算機(jī)應(yīng)用水平等級(jí)考試(二級(jí)C)考試科目,旨在讓學(xué)生初步掌握程序設(shè)計(jì)的方法,為今后學(xué)習(xí)其他計(jì)算機(jī)課程打下基礎(chǔ),也為今后工作打下計(jì)算機(jī)應(yīng)用基礎(chǔ)。目前,以Turbo C為平臺(tái)介紹各種算法、試題解答的書還不多。筆者從2005年擔(dān)任誠(chéng)毅學(xué)院工科類專業(yè)的“C程序設(shè)計(jì)”課程教學(xué),多年來(lái)注意搜集、整理、編寫Turbo C有關(guān)的算法例題、試題解答,在課堂上進(jìn)行融通講解,系統(tǒng)地從數(shù)值處理、圖形輸出、數(shù)據(jù)處理、過(guò)程模擬、算式求值、文件(字

3、符、)指針處理、數(shù)字組合、圖形設(shè)計(jì)八個(gè)方面詳細(xì)地介紹算法例題、試題解答程序,著重培養(yǎng)學(xué)生分析問(wèn)題、解決問(wèn)題、調(diào)試糾錯(cuò)的能力,讓學(xué)生在擴(kuò)大計(jì)算機(jī)知識(shí)面的同時(shí),提高實(shí)際編程能力、操作能力。本習(xí)題冊(cè)專為非計(jì)算機(jī)專業(yè)學(xué)生編寫,主要強(qiáng)調(diào)學(xué)生實(shí)際動(dòng)手編程能力的培養(yǎng)。本學(xué)期要求學(xué)生達(dá)到以下水平:19章要求學(xué)生掌握理論的基礎(chǔ)上自己設(shè)計(jì)程序;10章以后要求學(xué)生理解知識(shí)點(diǎn),能夠讀懂程序。編寫倉(cāng)促,錯(cuò)誤之處難免,歡迎指正。91二、 福建省高等學(xué)校計(jì)算機(jī)應(yīng)用水平等級(jí)考試考試大綱 二級(jí)(C語(yǔ)言) I、考試目的本考試考查考生以下知識(shí)與能力:1掌握語(yǔ)言的基本概念和語(yǔ)法知識(shí);2了解C語(yǔ)言程序與函數(shù)的結(jié)構(gòu)特點(diǎn),主函數(shù)及程序執(zhí)行

4、流程;3正確使用順序、選擇、循環(huán)三種結(jié)構(gòu),具有結(jié)構(gòu)化程序設(shè)計(jì)的能力;4掌握常用算法,能運(yùn)用算法描述工具流程圖;5能使用Turbo C集成開(kāi)發(fā)環(huán)境,完成源程序的編寫、編譯,運(yùn)行與調(diào)試程序;6具有綜合運(yùn)用以上知識(shí)編寫程序,解決計(jì)算與數(shù)據(jù)處理類問(wèn)題的初步能力。II、考試內(nèi)容一語(yǔ)言基礎(chǔ)1C語(yǔ)言特點(diǎn)(識(shí)記);2C語(yǔ)言程序基本組成(識(shí)記):C語(yǔ)言程序的結(jié)構(gòu)與主函數(shù),程序的書寫格式與規(guī)范;3基本數(shù)據(jù)類型:標(biāo)識(shí)符與基本數(shù)據(jù)類型(識(shí)記),常量與變量(領(lǐng)會(huì)),內(nèi)存的概念(識(shí)記);4基本輸入、輸出函數(shù)(領(lǐng)會(huì)):格式輸入和格式輸出函數(shù),非格式化輸入、輸出函數(shù);5運(yùn)算符與表達(dá)式(簡(jiǎn)單應(yīng)用):算術(shù)運(yùn)算,增1與減1運(yùn)算,關(guān)

5、系運(yùn)算,邏輯運(yùn)算,條件運(yùn)算,位運(yùn)算,賦值運(yùn)算,類型轉(zhuǎn)換,逗號(hào)運(yùn)算,長(zhǎng)度運(yùn)算符,運(yùn)算符的優(yōu)先級(jí)與結(jié)合性。二程序控制結(jié)構(gòu)1C語(yǔ)言的語(yǔ)句(識(shí)記):C語(yǔ)言語(yǔ)句的語(yǔ)法及書寫規(guī)范;2順序結(jié)構(gòu)(領(lǐng)會(huì)):程序設(shè)計(jì)的流程圖,程序控制結(jié)構(gòu)中的順序結(jié)構(gòu),復(fù)合語(yǔ)句;3分支結(jié)構(gòu)(簡(jiǎn)單應(yīng)用):if結(jié)構(gòu)、if結(jié)構(gòu)的多種形式,switch 結(jié)構(gòu)與多分支結(jié)構(gòu);4循環(huán)結(jié)構(gòu)(綜合應(yīng)用):當(dāng)型循環(huán),直到型循環(huán),break語(yǔ)句與continue語(yǔ)句。三構(gòu)造型數(shù)據(jù)1數(shù)組(綜合應(yīng)用):一維數(shù)組,字符數(shù)組,二維數(shù)組;2結(jié)構(gòu)類型:結(jié)構(gòu)類型的概念,結(jié)構(gòu)類型定義及結(jié)構(gòu)變量說(shuō)明,結(jié)構(gòu)變量的使用(領(lǐng)會(huì)),結(jié)構(gòu)變量的初始化,結(jié)構(gòu)數(shù)組的初始化(識(shí)記);3

6、聯(lián)合類型(識(shí)記):聯(lián)合類型的概念,聯(lián)合類型定義和聯(lián)合變量說(shuō)明,聯(lián)合類型的使用;4枚舉型(識(shí)記):枚舉型的定義和使用枚舉型變量;5typedef的用途(識(shí)記):使用typedef定義新類型名。四指針1指針與指針變量(識(shí)記):指針的基本概念,指針變量的定義,指針變量的賦值;2指針運(yùn)算符(領(lǐng)會(huì)):地址運(yùn)算符與指針運(yùn)算符、間接尋址;3指針與數(shù)組(簡(jiǎn)單應(yīng)用):指針與一維數(shù)組,移動(dòng)指針及兩指針相減運(yùn)算,指針比較,指針與字符串,指針與二維數(shù)組;4指針數(shù)組與指向指針的指針(識(shí)記):指針數(shù)組,定義指針數(shù)組,指針數(shù)組的應(yīng)用,指向指針的指針,定義指向指針的指針變量,指向指針的指針變量的應(yīng)用;5指針與結(jié)構(gòu)(領(lǐng)會(huì)):指

7、向結(jié)構(gòu)變量的指針變量,指向結(jié)構(gòu)數(shù)組的指針變量。五函數(shù)1常見(jiàn)的系統(tǒng)庫(kù)函數(shù)(識(shí)記):輸入、輸出函數(shù)(stdio.h): printf, scanf, getchar, putchar, puts,gets;字符與字符串函數(shù)(string.h):strcpy, strcat, strcmp, strlen;簡(jiǎn)單數(shù)學(xué)函數(shù)(math.h):sqrt, fabs, sin, cos, exp, log, log10, pow;2用戶自定義函數(shù)(簡(jiǎn)單應(yīng)用):函數(shù)定義、調(diào)用和說(shuō)明,函數(shù)返回值,函數(shù)參數(shù);3函數(shù)之間的數(shù)據(jù)傳遞(領(lǐng)會(huì)):函數(shù)數(shù)據(jù)按數(shù)值傳遞,函數(shù)數(shù)據(jù)按地址傳遞,利用函數(shù)返回值和外部變量進(jìn)行函數(shù)數(shù)據(jù)傳

8、遞,結(jié)構(gòu)變量作為函數(shù)參數(shù)傳遞;4函數(shù)的嵌套調(diào)用及遞歸調(diào)用(領(lǐng)會(huì)):函數(shù)的嵌套調(diào)用、函數(shù)的遞歸調(diào)用;5局部變量與全局變量(識(shí)記):局部變量與全局變量的定義、初始化及作用范圍;6變量的存儲(chǔ)類型與變量的初始化(領(lǐng)會(huì)):局部變量與全局變量的生存期,靜態(tài)變量與動(dòng)態(tài)變量的定義、初始化、作用范圍及生存期;7編譯預(yù)處理(領(lǐng)會(huì)):文件包含,無(wú)參宏定義。六文件1文件的基本概念,C語(yǔ)言中的兩種文件(識(shí)記);2文件的打開(kāi)、關(guān)閉和文件結(jié)束測(cè)試,文件的讀寫,文件的定位(識(shí)記)。七算法與編程(綜合應(yīng)用)1用C表達(dá)式或函數(shù)計(jì)算相對(duì)應(yīng)的數(shù)學(xué)表達(dá)式;2連加與連乘的計(jì)算,級(jí)數(shù)的計(jì)算;3冒泡法排序與選擇法排序;4矩陣的簡(jiǎn)單運(yùn)算與顯示

9、;5字符串操作;6文件編程應(yīng)用。八使用Turbo C集成開(kāi)發(fā)環(huán)境調(diào)試程序1源程序的編寫、編輯與改錯(cuò)(領(lǐng)會(huì));2集成環(huán)境下的求助Help(識(shí)記);3程序的編譯與目標(biāo)代碼的生成(識(shí)記);4程序的調(diào)試(綜合應(yīng)用):?jiǎn)尾竭\(yùn)行程序,運(yùn)行到光標(biāo)處,斷點(diǎn)設(shè)置,變量?jī)?nèi)容的跟蹤、顯示與修改;5了解Turbo C程序的常見(jiàn)錯(cuò)誤提示(識(shí)記)。、考試說(shuō)明一考試形式采用無(wú)紙化上機(jī)考試;考試環(huán)境: Windows XP 簡(jiǎn)體中文版, Turbo C 2.0或以上集成環(huán)境(IDE);考試時(shí)間: 90分鐘。二試卷題型結(jié)構(gòu)1選擇題(20小題) 40%;2程序改錯(cuò)題(2小題) 20%;3程序填空題(2小題) 20%;4編程題(2

10、小題) 20%。三、 理論習(xí)題1. 第一章 1. C語(yǔ)言的函數(shù)體由()括起來(lái)。A) <>B) C) D) ()2. 下面敘述錯(cuò)誤的是()A) 一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成B) 構(gòu)成C語(yǔ)言源程序的基本單位是語(yǔ)句C) C源程序中大、小寫字母是有區(qū)別的D) 若一條語(yǔ)句較長(zhǎng),可分寫在下一行或多行上3. 下面敘述正確的是()A) 每行最多只能寫兩條語(yǔ)句B) main()函數(shù)必須位于源程序文件的開(kāi)頭C) 所有語(yǔ)句都必須以分號(hào);結(jié)束D) 程序中必須含有自定義函數(shù)4. C源程序中main()函數(shù)的位置()。A) 必須位于程序的最前面B) 必須在自定義函數(shù)前面C) 必須在系統(tǒng)庫(kù)函數(shù)后面D) 可

11、以在自定義函數(shù)后面5. main()函數(shù)的位置()A) 必須位于用戶自定義函數(shù)的前面B) 必須位于程序文件的最前面C) 可位于用戶字定義函數(shù)之前,也可位于用戶自定義函數(shù)之后D) 必須位于用戶自定義函數(shù)的后面6. 結(jié)構(gòu)化程序設(shè)計(jì)不包括( )。A) 最優(yōu)化B) 自頂而下,逐步細(xì)化C) 模塊化設(shè)計(jì)D) 結(jié)構(gòu)化編程7. ()是結(jié)構(gòu)化程序設(shè)計(jì)應(yīng)遵循的原則A) 根據(jù)需要可使用嵌套基本控制結(jié)構(gòu)表示程序邏輯B) 應(yīng)使用順序、選擇、循環(huán)三種基本控制結(jié)構(gòu)表示程序邏輯C) 選用的控制結(jié)構(gòu)可有多個(gè)入口和一個(gè)出口D) 為提高程序效率,應(yīng)盡量使用goto語(yǔ)句8. 描述一個(gè)算法可以有不同的方式常見(jiàn)的有()A) 機(jī)器語(yǔ)言、匯

12、編語(yǔ)言和高級(jí)語(yǔ)言B) 自然語(yǔ)言、流程圖和偽代碼C) 高級(jí)語(yǔ)言、字軟語(yǔ)言和偽代碼D) 匯編語(yǔ)言、高級(jí)語(yǔ)言和低級(jí)語(yǔ)言9. 下列敘述正確的是()A) 花括號(hào)“只能用作函數(shù)體的定界符B) 注釋部分可在C源程序單獨(dú)占一行,也可以跟在一行語(yǔ)句后面C) 分號(hào)是C語(yǔ)句之間的分隔符,并不調(diào)試一條語(yǔ)句的結(jié)束D) 函數(shù)是C源程序的基本單位,所有函數(shù)名都可以由用戶命名10. 下面敘述錯(cuò)誤的是()A) 語(yǔ)句是構(gòu)成C語(yǔ)言源程序的基本單位B) 所有語(yǔ)句都必須以分號(hào)“;”結(jié)束C) C語(yǔ)言源程序必須包含一個(gè)main()函數(shù)D) 注釋部分在程序編譯和運(yùn)行時(shí)不起作用11. 能將C源程序轉(zhuǎn)換為目標(biāo)程序的軟件是()A) 編譯程序B)

13、匯編程序C) 解釋程序D) 編輯程序12. 下面敘述中,( )不是結(jié)構(gòu)化程序設(shè)計(jì)中的三種基本結(jié)構(gòu)之一。A) 數(shù)據(jù)結(jié)構(gòu)B) 選擇結(jié)構(gòu)C) 循環(huán)結(jié)構(gòu)D) 順序結(jié)構(gòu)2. 第二章(略) 3. 第三章 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式1. ( )為合法的常量。A) 5,236B) 1.23E+8C) b_kD) 3.21E-6.52. 下列合法的浮點(diǎn)數(shù)的是()A) .66B) 123C) 2E0.5D) E23. 下列()是不正確的常量形式;A) x5B) 1.6E6C) 1E-2D) “0”4. ( )為正確的用戶標(biāo)識(shí)符。A) min-5B) max_atC) 3_rowD) union5. 下列()是不合法

14、的用戶標(biāo)識(shí)符A) DivB) _f6C) _numD) 5x6. 合法的用戶標(biāo)識(shí)符是()A) 0.6fB) _structC) forD) 5d7. 正確的常量是()A) a3B) “0”C) 1E6.1D) E-38. 整型常量沒(méi)有()形式A) 十六進(jìn)制B) 十進(jìn)制C) 二進(jìn)制D) 八進(jìn)制9. 不合法的長(zhǎng)整型常量是()A) 1E10B) 0LC) 6246245D) (Long)624624510. 以下( )是正確的變量名。A) a.beeB) -p11C) intD) p_1111. 以下( )是正確的變量名。A) 5fB) ifC) f.5D) _f512. 以下( )是正確的常量。A

15、) E-5B) 1E5.1C) 'a12'D) 32766L13. 以下( )是不正確的字符串常量。A) 'abc'B) "12'12"C) "0"D) " "14. 以下( )是正確的字符常量。A) "c"B) ''C) 'W'D) "32a"15. ()為非法的字符串常量A) “056”B) 123C) “D) “case”16. 下列不合法的字符常量是()A) B) “a”C) tD) n17. char型變量存放的是

16、( )。A) ASCII代碼值B) 字符本身C) 十進(jìn)制代碼值D) 內(nèi)碼值18. ()為正確的字符常量A) 084B) bcdC) 165D) 19. ()運(yùn)算符不能用于非整型數(shù)據(jù)運(yùn)算A) /B) %C) *D) +20. 下列運(yùn)算符中,優(yōu)先級(jí)最高的是()A) !=B) &&C) +D) +21. 若有定義:int b=-15;則()為正確的賦值表達(dá)式。A) *b=6B) b=*5C) b+10=-5D) b+=b*322. 若有定義:float x=2,y; int a=3 ;語(yǔ)句y=1*(x+a)/3;運(yùn)行后,y的值為()。A) 20B) 1666667C) 10D) 02

17、3. 若有定義:int a,b=5;語(yǔ)句a=(b/2)+b%2;運(yùn)行后,a的值為()A) 3B) 4C) 0D) 224. 若已經(jīng)定義:int i,j,k; double x;則下列表達(dá)式中語(yǔ)法正確的是()A) j+=(k=4)*jB) x%5C) i=k+2jD) j+2=k25. 若已定義:int n=10,i=4;則賦值運(yùn)算n%=i+1執(zhí)行后,n的值是()。A) 1B) 0C) 2D) 326. 若已定義int k=5;float d=3.5;則表達(dá)式d+k%3/2的值為()A) 45B) 35C) 4D) 5527. 下面敘述正確的是()A) 2/3與2%3等價(jià)B) 5/(int)4.

18、0與5/4等價(jià)C) +2與 3等價(jià)D) +2與3等價(jià)28. 若有定義:int a,b=6;語(yǔ)句a=-b;運(yùn)行后,a、b的值分別是()。A) 6 6B) 56C) 55D) 6529. 若有定義:int i=3,j=6;則表達(dá)式(-i)*(j+)的值為()。A) 10B) 18C) 15D) 1230. 若已經(jīng)定義:int i=5,j;則語(yǔ)句j=(+i)+(i-);運(yùn)行后的j的值為()A) 11B) 9C) 10D) 1231. 若已經(jīng)定義:int x,y,z;則()是不正確。A) x=y+=10*x;B) x=10,y=6;C) x=2.5;D) z=y+x=3032. 若已經(jīng)定義: doub

19、le x;下列可以用于求x的絕對(duì)值的數(shù)學(xué)函數(shù)是()A) fabs(x)B) sqrt(x)C) abs(x)D) labs(x)33. 已知int a='R' 則正確的表達(dá)式是( )。A) a=int(3e2)B) 2*a=a+C) a=a+a=a+3D) a%1034. 已知char a='R' 則正確的賦值表達(dá)式是( )。A) a=(a+)%4B) a+2=3C) a+=256-D) a='078'35. 語(yǔ)句a=(3/4)+3%2;運(yùn)行后,a的值為( )。A) 0B) 1C) 2D) 336. 設(shè)整型變量a為5,使b不為2的表達(dá)式是( )。

20、A) b=(+a)/3B) b=6-(-a)C) b=a%2D) b=a/237. 設(shè)單精度型變量f、g的值均為2.0,使f為4.0的表達(dá)式是( )。A) f+=gB) f-=g+2C) f*=g-6D) f/=g*1038. 若有定義:int k,i=2,j=4;則表達(dá)式k=(+i)*(j-)的值是( )。A) 8B) 12C) 6D) 939. 若有定義: int a=3;語(yǔ)句a+=a-=a*a;運(yùn)行后,a的值為()A) 6B) 0C) 12D) 340. 若有定義:int b=-15; 則()為正確的賦值表達(dá)式。A) b=*5B) *b=6C) b+10=-5D) b+=b*341. 下

21、面敘述正確的是( )。A) 2/3 與 2.0/3.0 等價(jià)B) (int)2.0/3 與 2/3 等價(jià)C) +5 與 6 等價(jià)D) 'A'與"A"等價(jià)42. 若有定義int x=1,y=2,n=3;則()為正確的表達(dá)式。A) x=y*3,y=(x+n)/yB) (x+y)(y+n)C) float(y/n)D) x=ny43. 若有定義:float x=3.5;int z=8;則表達(dá)式 x+z%3/4 的值為( )。A) 3.75B) 3.5C) 3D) 444. 若有定義:float x=3.5,y=3.6,則表達(dá)式()的值為6。A) (int)x+(i

22、nt)yB) (int)(x+y)C) int(x+y)D) xy45. 下面敘述正確的是()。A) (3+9)+是正確的表達(dá)式B) “abc”+”xxx”是正確表達(dá)式C) c語(yǔ)言中整型與字符型變量的混合運(yùn)算表達(dá)式的結(jié)果是整型D) 模運(yùn)算符%兩邊運(yùn)算數(shù)的數(shù)據(jù)類型是任意的46. 下列四個(gè)運(yùn)算符,按優(yōu)先級(jí)別由高到低排列的是()A) !、%、=、=B) %、!、=、=C) !、%、=、=D) !、=、%、=47. 若已定義:int x=3,y=2;則下列不正確的賦值表達(dá)式是()A) x-=x+=y;B) x=y+2C) x-y=1;D) x=2,y=2;48. 若有定義:int x;char c=A

23、;則正確的賦值表達(dá)式是().說(shuō)明A的ASCII碼的十進(jìn)制值為65,a的ASCII碼的十進(jìn)制值為97A) x=c+ABCB) x=c+32C) x=c+CBAD) x=ABC49. 若有定義:char c1=A,c2=B;語(yǔ)句printf(“%d+%d=%d”,c1,c2,c1+c2); 運(yùn)行后的結(jié)果為()。說(shuō)明:A的ASCII碼的十進(jìn)制值為65A) 6565ABB) A+B=131C) 65+66=131D) A+B=AB50. 下面敘述錯(cuò)誤的是()。A) 算術(shù)運(yùn)算符中只有“*”、“/”優(yōu)先級(jí)高于關(guān)系運(yùn)算符B) 模運(yùn)算符“%”是C語(yǔ)言基本的算術(shù)運(yùn)算符C) 算術(shù)運(yùn)算符中不包含“=”運(yùn)算符D) 自

24、加和自減運(yùn)算符只能用于變量,而不能用于常量或表達(dá)式51. 下面關(guān)于算術(shù)運(yùn)算符的敘述,錯(cuò)誤的是( )。A) %(模運(yùn)算符)的運(yùn)算對(duì)象只能為整型量B) 算術(shù)運(yùn)算符的結(jié)合方向是"自左至右"C) 自加和自減運(yùn)算符的結(jié)合方向是"自右至左"D) 其運(yùn)算對(duì)象不包含函數(shù)52. 若已定義:int x=11;double y=3.5;則表達(dá)式y(tǒng)/2+x%2/2的值是()A) 3.5B) 1.0C) 1.5D) 1.7553. 若已經(jīng)定義:int x=2,y;則執(zhí)行語(yǔ)句y=x%2+(-x);后y的值是()A) 0B) 3C) 1D) 254. 若已經(jīng)定義:double x=3

25、,y;int z=2;則語(yǔ)句y=(x+z)/2*z;執(zhí)行后,y的值為()A) 4.0B) 1.0C) 1.25D) 5.055. 若已經(jīng)定義:double x,y;則下列表達(dá)式不能正確計(jì)算(x-2)/3*y的是()A) (x-2)*y*1/3B) y/3*(x-2)C) y*(x-2)/3D) (1/3)*(x-2)*y56. 若已經(jīng)定義:double x=2.5;則求x的平方的正確的函數(shù)調(diào)用是()A) sqrt(x)B) pow(x,2)C) exp(x)D) rand(2,x)57. 若已經(jīng)定義:double x;則 exp(x)+sqrt(x)/2所表示的數(shù)學(xué)式是()58. 對(duì)應(yīng)代數(shù)表達(dá)

26、式3a÷(b+c),C語(yǔ)言的表達(dá)式是()A) 3*a(b+c)B) 3a/(b+c)C) 3*a/b+cD) 3*a/(b+c)59. 若已經(jīng)定義:double a,b,c;下列表達(dá)式中與(ab)*c/2 計(jì)算結(jié)果不相符合的是()。A) (ab)*c/2B) (ab)*c*1/2C) c/2*(a-b)D) (1/2)*(a-b)*c60. 若已經(jīng)定義:int a=1,b=2,c=2;則表達(dá)式(a+b)/1.0/c的值是()A) 0.0B) 1.0C) 1D) 1.561. 下面敘述正確的是( )。A) 強(qiáng)制類型轉(zhuǎn)換運(yùn)算的優(yōu)先級(jí)高于算術(shù)運(yùn)算B) 若a和b是整型變量,(a+b)+是合法

27、的C) 'A'*'B' 是不合法的D) "A"+"B"是合法的62. 若已定義:int x=2,y=4;則表達(dá)式(double)x/y+y%x的值是()A) 2B) 2.5C) 0D) 0.563. 若已經(jīng)定義:long int i; char c; double x;則表達(dá)式i*c+(int)x的結(jié)果的類型是()A) long intB) int C) doubleD) char64. 若已經(jīng)定義:int n=2 ;double x=2.5;則下列表達(dá)式中不符合語(yǔ)法的是()A) (int)(x/n)B) (int)x%n

28、C) (int)(x%n)D) (int)x/n65. 若已經(jīng)定義:int i=2,j=2;float x=2.5,y=3.5;則表達(dá)式(float)(i+j)/2+(int)x%(int)y的值為()A) 4.5B) 4.0C) 3.0D) 3.566. 若有定義:float x=3.5,y=5.5;則表達(dá)式()的值為2.A) (int)x+y%7B) (int)(x+y)%7C) int(x+y)%7D) (x+y)%767. 若有定義:int x=2;則正確的賦值表達(dá)式是( )。A) a-=(a*3)B) double(-a)C) a*3D) a*4=368. 若已經(jīng)定義:int b=7

29、;float a=2.5,c=4.0;則表達(dá)式a+(b/2*(int)(a+c)%4的值是()A) 45B) 55C) 25D) 3569. getchar()函數(shù)的功能是獲取終端輸入的()A) 一個(gè)字符B) 多個(gè)字符C) 一個(gè)整型變量表達(dá)式D) 一個(gè)實(shí)型變量值70. 只能向終端輸出一個(gè)字符的是().A) printf()函數(shù)B) getchar()函數(shù)C) scanf()函數(shù)D) putchar()函數(shù)71. 若有定義int a=8,b=5;要實(shí)現(xiàn)輸出形式為:8*5=40,正確的printf()函數(shù)調(diào)用語(yǔ)句是()A) printf(“%d*%d=%dn”,a,b,a*b);B) printf

30、(“a*b=%dn”,a*b);C) printf(“%d*%d=a*bn”,a,b);D) printf(“a*b=a*bn”);72. 若有定義float x;要從鍵盤輸入數(shù)據(jù)6.02賦給x,則應(yīng)選用()語(yǔ)句。A) scanf(“%8.2f”,&x);B) scanf(“%4.2f”,&x);C) scanf(“%f”,&x);D) scanf(“%1.2f”,&x);73. 若已定義:float f; char s20;下列正確的輸入語(yǔ)句是()。 注:參考數(shù)組章節(jié)知識(shí)A) scanf(“%s%f”,s,f);B) scanf(“%c%f”,s,&f

31、);C) scanf(“%s%f”,s,&f);D) scanf(“%s%f”,&s,f);74. 若有定義:int x=1234,y=123,z=12;則語(yǔ)句printf("%4d+%3d+%2d", x, y, z);運(yùn)行后的輸出結(jié)果為( )。A) 123412312B) 12341234123412341231231231212C) 1234+1234+1234D) 1234+123+1275. 若有語(yǔ)句int a;char c;scanf(“%3d%c”,&a,&c);為將整數(shù)135賦給a,字符6賦給c,正確的數(shù)據(jù)輸入方式是()。說(shuō)明

32、:<CR>代表?yè)Q行,_代表空格A) 135_6_B) 135_6<CR>C) 1356<CR>D) 135<CR>6<CR>76. 已知 char a;使用scanf()函數(shù)輸入一個(gè)字符給變量a,不正確的函數(shù)調(diào)用是( )。A) scanf("%d",&a);B) scanf("%lf",&a);C) scanf("%c",&a);D) scanf("%u",&a);77. 要使用以下程序給三個(gè)整變量x1,x2,x3分別賦之值

33、1,2,3,正確的數(shù)據(jù)輸入格式是()int x1,x2,x3;scanf(“%d,%d,%d”,&x1,&x2,&x3);A)1,2,3B)1 2 3C)123D)12378. 若已經(jīng)定義:char c;則下列正確的輸入語(yǔ)句是()A) gets(c);B) scanf(“%c”,c);C) getchar(c);D) scanf(“%s”,&c);79. 若已經(jīng)定義:int x=5,y=7;正確實(shí)現(xiàn)輸出形式:5+7=12的語(yǔ)句是()A) printf(“%d+%d=%d”,x,y,x+y);B) printf(“x+y=x+y”);C) printf(“%d+%

34、d=x+y”,x,y);D) printf(“x+y=%d”,x+y);80. 要使下列程序段輸出的內(nèi)容為12312345,正確的輸入數(shù)據(jù)格式是()int i,j,k;scanf(“%d%d%d”,&I,&j,&k);printf(“%d%d%dn”,i,j,k);A) 12312345B) 123 123 45C) 123,123,45D) 123,1234581. 若有定義:int x,a;則語(yǔ)句x=(a=3,a+1);運(yùn)行后,x、a的值依次為( )。A) 3,3B) 4,4C) 4,3D) 3,482. 若已經(jīng)定義:int x; 則逗號(hào)表達(dá)式x=5,3+x,x=x

35、*2的值是()A) 15B) 5C) 10D) 1683. 語(yǔ)句x=(a=3,b=+a);運(yùn)行后,x、a、b的值依次為( )。A) 3,3,4B) 4,4,3C) 4,4,4D) 3,4,384. 若有定義:int x,y,z;語(yǔ)句x=(y=z=3,+y,z+=y);運(yùn)行后,x的值為()A) 7B) 3C) 8D) 64. 第四章、第五章 程序控制結(jié)構(gòu)(分支、循環(huán)語(yǔ)句)1. 若有定義:int a;則表達(dá)式( )不能用來(lái)判斷a值為奇數(shù)是“真”,偶數(shù)是“假”A) a%21B) !(a%2=0)C) a%2D) !(a%2)2. 若已經(jīng)定義int x,y;則下列不能正確表示數(shù)學(xué)關(guān)系式|x-y|>

36、;5的表達(dá)式是( )A) (x-y)>5 | (x-y)<-5B) (x-y)<-5&&(x-y)>5C) abs(x-y)>5D) (x-y)*(x-y)>253. 判斷char型變量C1是否為小寫字母的正確表達(dá)式為( )A) (a>=c1)&&(z<=C1)B) (c1>= a)&&( C1<= z)C) a<=c1<=zD) (c1>= a)&&( C1<= z)4. 若已定義:int a=0,b=1;則下列表達(dá)式值為真的是( )A) a!=

37、0|b!=1B) a+&&b+C) (a=0)&&(b=1)D) a=1|a!=15. 若已經(jīng)定義: int x=2,y=3;則下列表達(dá)式值為假的是( )A) x&&yB) x>y|x<yC) x=(y=x)D) !x|!y6. 若有定義:int a;且表達(dá)式!a的值為0,則表達(dá)式( )的值為1.A) a= =0B) a=0C) !(a<0|a>0)D) a!=07. 若有定義:int a=1,b=2,c=3,d=4,t=2,k=2;語(yǔ)句(t=a<b)|(k=c<d);運(yùn)行后,k的值為( )。A) 2B) -1

38、C) 0D) 18. 若已定義:int a=3,b=4,c=5;則下列表達(dá)式中值為0的是( )A) a|b+c&&b-cB) a<=bC) !(a<b) && !c|1)D) a&&b9. 能正確表示a和b同時(shí)為正或同時(shí)為負(fù)的邏輯表達(dá)式是( )A) a*b>0B) (a+b>0)&&(a+b<0)C) (a>0|b>0)&&(a<0|b<0)D) (a>0&&b>0)&&(a<0&&b<0)

39、10. 若已定義int x=5;則下列程序段的運(yùn)行結(jié)果是( )。if(x-)<5) printf(“%dn”,x);else printf(“%dn”,x+);A) 5B) 4C) 6D) 311. 下列程序段的運(yùn)行結(jié)果是( )。int k=8;switch(k%5)default:printf(“DD”) ; case 1:printf(“AA”);break;case 2:printf(“BB”);case 0:printf(“CC”);A) AAB) DDC) CCD) DDAA12. 下列程序段運(yùn)行后sum的值為( )。int i=8,sum=0;while(i-)>=5)

40、 sum+=2;A) 10B) 6C) 8D) 413. 若已定義int k=4,s=10;則下列程序段運(yùn)行結(jié)果是( ) if (2*k>9) s=k+5;printf("%dn",s+k);A) 13B) 19C) 10D) 1414. 下列程序段運(yùn)行后m的值為( )int i,j,m=0;for(i=1.i<=3.i+) for(j=2;j<=4;j+) m=m+i+j;A) 33B) 30C) 45D) 2715. 下列程序段運(yùn)行后sum的值為( )。int i=8,sum=0;while(i-)>=5)sum+=2;A) 4B) 6C) 8D

41、) 1016. 若已定義int k;下列( )語(yǔ)句與其他三條語(yǔ)句不等價(jià)。A) if(k=0) printf(“Yes!n”); else printf(“No!n”);B) if(k=0) printf(“No!n”); else printf(“Yes!n”);C) if(k!=0) printf(“Yes!n”); else printf(“No!n”);D) if(k) printf(“Yes!n”); else printf(“No!n”);17. 若已定義:int i=5,m=1;則( )語(yǔ)句不會(huì)產(chǎn)生無(wú)限循環(huán)。A) while(i=1) m+=3;B) for( ; i>0;

42、i-) m+=3;C) dom+=3;while(i=5);D) for( ;i<10; )m+=3;18. 下列程序段運(yùn)行時(shí),語(yǔ)句k+=2;執(zhí)行的次數(shù)是( )。int i,k=0;for(i=7;i>3;i- -,i- -)k+=2;A) 1B) 2C) 3D) 419. 敘述正確的是( )。A) while循環(huán)體至少無(wú)條件執(zhí)行一次,而do.while循環(huán)體可能都不執(zhí)行B) for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體C) for循環(huán)中循環(huán)體可包含多條語(yǔ)句,但必須用括起來(lái)D) while循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體20. 若已定義:int m=3,n=2,k;則下面正確

43、的switch語(yǔ)句是( )。A) switch(m+n)case 3: k=m+n; break;case 2: k=m-n; break;default: k=m*n;B) switch(m+n)case is 3: k=m+n; break; case is 5:k=m-n;break; default: k=m*n;C) switch(m)case m<0: k=m+n;break; case m=0: k=m-n;break; default: k=m*n;D) switch(m+n) case 3: k=m+n;break; case 2: k=m-n;break; defau

44、lt: k=m*n;21. 設(shè)有程序段 int h=8; while(h=0) h=h-2; 敘述正確的是( )。A) 循環(huán)語(yǔ)句執(zhí)行1次B) 循環(huán)語(yǔ)句執(zhí)行3次C) 循環(huán)體語(yǔ)句一次也不執(zhí)行D) 循環(huán)體語(yǔ)句執(zhí)行4次22. 以下程序段的運(yùn)行結(jié)果是( )。int a=-6,b;if(a>0) b=9;else if (a=0) b=0;else if(a<-5) b=-8;else b=-1;printf("%dn",b);A) -1B) -8C) 9D) 023. 以下程序段運(yùn)行后x的值為( )。int i,x=1;for(i=3;i>0;i-)x=(x+1)*

45、3;A) 54B) 27C) 66D) 924. 以下程序段運(yùn)行后m的值為( )。int i,m=3;for(i=1;i<=3;i+)m+=1;if(m%2!=0)break;m+=2;A) 6B) 7C) 9D) 825. 以下程序的運(yùn)行結(jié)果是( )。void main() int s5=1,i;for(i=1;i<5;i+)si=si-1+i;for(i=0;i<5;i+)printf("%d ",si);A) 1 2 4 6 8B) 1 2 3 4 5C) 1 2 4 7 11D) 1 2 6 10 1526. 以下程序的運(yùn)行結(jié)果是( )。void

46、main()int k=5; switch(k) default: printf("%d",k) case 1: printf("%d",k); break; case 2: printf("%d",2*k);case 3: printf("%d",3*k); break;A) 5B) 15C) 10D) 5527. 以下程序段運(yùn)行后m的值為( )。int i,m=1;for(i=1;i<=4;i+) m+=1;if(m%2=0)continue;m+=2;A) 6B) 5C) 12D) 95. 第六章 數(shù)組

47、(數(shù)組概念、二維數(shù)組、字符數(shù)組)1. 下列程序段的運(yùn)行結(jié)果是( )。int a=1,3,4,6,9,i,x=1;for(i=0;i<3;i+)x+=ai+i;printf(“%dn”,x);A) 15B) 10C) 9D) 142. 下列程序段的運(yùn)行結(jié)果是( )。int a=8,7,6,5,4,3,2,1,i,sum=0;for(i=0;i<8;i+)if(i<=3) sum+=ai;else sum - = ai;printf(“%dn”,sum);A) 15B) 16C) 10D) 03. 對(duì)二維數(shù)組arr初始化正確的是( )。A) int arr23=1,2,3,4,0

48、;B) int arr23=1,2,3,4;C) int arr2=1,2,3,4,5;D) int arr=1,3,4,5;4. 下列程序的運(yùn)行結(jié)果是( )。void main()int a5=2,3,5,11,4,b5=12,1,6,9,8;int *pa=a,*pb=b;int i;for(i=0;i<5;i+)if(*(pa+i)<*(pb+i)printf(“%d ”,*(pa+i);A) 11B) 5C) 2D) 5 45. 下列程序段的運(yùn)行結(jié)果是( )。int a=0,1,2,3,4,5,6,7,8,9,i=0,t;while(i<=7)t=ai;ai=ai+2

49、;ai+2=t;i+=2;for(i=0;i<10;i+)printf(“%d”,ai);A) 1357924680B) 2468013579C) 2143658709D) 01234567896. 下列程序段的運(yùn)行結(jié)果是( )。int a33=1,2,3,4,5,6,7,8,9,i;for(i=0;i<3;i+)printf(“%2d”,10-a2-ii);A) 9 5 1B) 3 5 7C) 7 5 3D) 8 4 17. 若已定義char stra50,strb50;能正確從鍵盤讀入字符串的是( )A) scanf(“%s%s”,stra,strb);B) getch(str

50、,strb);C) scanf(“%s%s”,stra50,strb50);D) gets(strb,stra);8. 下列程序定義的二維數(shù)組a的() #define M 3 #define N 4 void main() int aMN; A) 第一維和第二維都為3B) 第一維為3,第二維為4C) 第一維和第二維都為4D) 第一維為4,第二維為39. 下列敘述正確的是()。A) 數(shù)組中每一個(gè)原屬都屬于同一個(gè)數(shù)據(jù)類型;B) C語(yǔ)言中,數(shù)組長(zhǎng)度在程序運(yùn)行中可作動(dòng)態(tài)調(diào)整;C) 可利用數(shù)組名引用數(shù)組的第一元素;D) 定義數(shù)組時(shí),若不加類型說(shuō)明符則為整型;10. 下列程序段的運(yùn)行結(jié)果是( )。char

51、 str = Y,o, u, 0, a, r, e, 0, w, e, l, c, o, m, e;puts(str);A) You areB) welcomeC) You are welcomeD) You11. 若已定義:char str120=”guangzhou”,str220=”2010”;能形成字符串”GUANGZHOU 2O1O”的語(yǔ)句是()。A) strcpy(str2,strupr(str1);B) strcat(strupr(str1),str2);C) strcpy(strupr(str1),str2);D) strcat(str2,strupr(str1);12. 若已

52、定義:char str20=“Good0morning”;則函數(shù)strlen(str)的值是()A) 12B) 6C) 4D) 513. 下列程序段的運(yùn)行結(jié)果是()char s17=”abcdef”,s24=”123”;strcpy(s1,s2);printf(”%s %c”,s1,s14);A) 123 e B) abcC) abc eD) 12314. 下列程序段的運(yùn)行結(jié)果是( )。int a=1,3,4,6,9,i,x=1;for(i=0;i<3;i+)x+=ai+1;printf(“%dn”,x);A) 15B) 14C) 9D) 1015. 若已定義:int a4=1,2,3,4,5,6,7,8,9,10,11;則a22的值為( )。A) 4B) 6C) 7D) 1016. 給數(shù)組a所有元素賦初值0的語(yǔ)句是( )。A) int a9=9*0;B) int a9=0;C) int

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論