往年全國計(jì)算機(jī)二級(jí)c語言試題及答案_第1頁
往年全國計(jì)算機(jī)二級(jí)c語言試題及答案_第2頁
往年全國計(jì)算機(jī)二級(jí)c語言試題及答案_第3頁
往年全國計(jì)算機(jī)二級(jí)c語言試題及答案_第4頁
往年全國計(jì)算機(jī)二級(jí)c語言試題及答案_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

往年全國計(jì)算機(jī)二級(jí)c語言試題及答案

一、單項(xiàng)選擇題(每題2分,共10題)1.在C語言中,合法的字符常量是()A.'\084'B.'\x43'C.'ab'D."\0"答案:B2.若有定義:inta=10;則表達(dá)式a+=a-=aa的值是()A.-180B.180C.10D.0答案:A3.以下能正確定義一維數(shù)組的選項(xiàng)是()A.intnum[];B.defineN100;intnum[N];C.intnum[0..100];D.intN=100;intnum[N];答案:B4.以下函數(shù)的功能是()```cvoidfun(chars){chart=s;while(t++);t--;while(t>=s)putchar(t--);}```A.計(jì)算字符串的長度B.使指針指向字符串的末尾C.將字符串逆序輸出D.以上都不對(duì)答案:C5.若有以下定義和語句:```cinta=4,b=3,p,q,w;p=&a;q=&b;w=q;q=NULL;```則以下選項(xiàng)中錯(cuò)誤的語句是()A.q=0;B.w=p;C.p=a;D.p=w;答案:A6.在C語言中,函數(shù)返回值的類型是由()決定的。A.return語句中的表達(dá)式類型B.調(diào)用該函數(shù)時(shí)的主調(diào)函數(shù)類型C.定義函數(shù)時(shí)所指定的函數(shù)類型D.形參的數(shù)據(jù)類型答案:C7.以下敘述中正確的是()A.全局變量的作用域一定比局部變量的作用域大B.靜態(tài)(static)類別變量的生存期貫穿于整個(gè)程序的運(yùn)行期間C.函數(shù)的形參都屬于全局變量D.未在定義語句中賦初值的auto變量和static變量的初值都是隨機(jī)值答案:B8.若有定義:structstudent{intnum;charname[10];floatscore;};則以下正確的定義結(jié)構(gòu)體數(shù)組并賦初值的語句是()A.structstudentstu[2]={1,"zhangsan",90,2,"lisi",80};B.structstudentstu[2]={{1,"zhangsan",90},{2,"lisi",80}};C.structstudentstu[2]={1,"zhangsan",90,{2,"lisi",80}};D.structstudentstu[2]={{1,"zhangsan",90},2,"lisi",80};答案:B9.若fp是指向某文件的指針,且已讀到文件末尾,則庫函數(shù)feof(fp)的返回值是()A.EOFB.-1C.非零值D.NULL答案:C10.以下關(guān)于宏的敘述中正確的是()A.宏名必須用大寫字母表示B.宏定義必須位于源程序中所有語句之前C.宏替換沒有數(shù)據(jù)類型限制D.宏調(diào)用比函數(shù)調(diào)用耗費(fèi)時(shí)間答案:C二、多項(xiàng)選擇題(每題2分,共10題)1.以下關(guān)于C語言數(shù)據(jù)類型的描述中,正確的是()A.基本數(shù)據(jù)類型包括整型、實(shí)型、字符型等B.枚舉類型是基本數(shù)據(jù)類型C.結(jié)構(gòu)體類型是構(gòu)造數(shù)據(jù)類型D.數(shù)組屬于構(gòu)造數(shù)據(jù)類型E.指針類型是基本數(shù)據(jù)類型答案:ACD2.以下關(guān)于C語言中函數(shù)的描述,正確的有()A.函數(shù)可以沒有返回值B.函數(shù)可以嵌套定義C.函數(shù)可以遞歸調(diào)用D.函數(shù)的形參可以是指針類型E.函數(shù)的局部變量在函數(shù)調(diào)用結(jié)束后就被釋放答案:ACDE3.在C語言中,關(guān)于指針的以下說法正確的是()A.指針是一種變量,它存放的是數(shù)據(jù)的地址B.指針變量可以進(jìn)行算術(shù)運(yùn)算C.指針變量可以指向數(shù)組元素D.可以通過指針來訪問結(jié)構(gòu)體成員E.空指針不指向任何實(shí)際的內(nèi)存單元答案:ABCDE4.對(duì)于以下代碼片段:```cinta=10;intp=&a;```以下操作合法的是()A.printf("%d",p);B.p=20;C.p++;D.intb=p;E.p=NULL;答案:ABCDE5.以下關(guān)于C語言中結(jié)構(gòu)體的說法正確的是()A.結(jié)構(gòu)體中的成員可以是不同的數(shù)據(jù)類型B.可以定義結(jié)構(gòu)體數(shù)組C.結(jié)構(gòu)體變量之間可以直接賦值D.可以通過結(jié)構(gòu)體指針訪問結(jié)構(gòu)體成員E.結(jié)構(gòu)體不能嵌套定義答案:ABCD6.在C語言中,關(guān)于文件操作的描述正確的是()A.可以用fopen函數(shù)打開一個(gè)文件B.fclose函數(shù)用于關(guān)閉文件C.可以用fread和fwrite函數(shù)進(jìn)行文件的讀寫操作D.feof函數(shù)用于判斷文件是否到達(dá)末尾E.fseek函數(shù)用于移動(dòng)文件指針的位置答案:ABCDE7.以下表達(dá)式中,結(jié)果為邏輯真(非零值)的有()A.3>2B.'a'==97C.1&&0D.!(3<2)E.0||1答案:ABDE8.以下關(guān)于C語言中數(shù)組的描述正確的是()A.數(shù)組名代表數(shù)組的首地址B.可以用sizeof運(yùn)算符計(jì)算數(shù)組的大小C.數(shù)組的下標(biāo)是從1開始的D.可以用數(shù)組名作為函數(shù)的參數(shù)E.二維數(shù)組在內(nèi)存中是按行優(yōu)先存儲(chǔ)的答案:ABDE9.以下屬于C語言關(guān)鍵字的有()A.intB.ifC.mainD.whileE.sizeof答案:ABD10.在C語言中,關(guān)于循環(huán)語句的描述正確的是()A.for循環(huán)語句可以嵌套使用B.while循環(huán)語句的循環(huán)體至少執(zhí)行一次C.do-while循環(huán)語句先執(zhí)行循環(huán)體,再判斷條件D.break語句可以用于跳出循環(huán)E.continue語句用于結(jié)束本次循環(huán),繼續(xù)下一次循環(huán)答案:ACDE三、判斷題(每題2分,共10題)1.在C語言中,所有變量都必須先定義后使用。()答案:正確2.一個(gè)C程序可以包含多個(gè)函數(shù),但只能有一個(gè)主函數(shù)。()答案:正確3.C語言中的字符串是以'\0'作為結(jié)束標(biāo)志的。()答案:正確4.指針變量在使用之前不需要初始化。()答案:錯(cuò)誤5.結(jié)構(gòu)體中的成員變量不能是指針類型。()答案:錯(cuò)誤6.函數(shù)的形參不能是數(shù)組類型。()答案:錯(cuò)誤7.在C語言中,邏輯運(yùn)算符&&和||具有短路特性。()答案:正確8.全局變量在整個(gè)程序的任何地方都可以直接訪問。()答案:錯(cuò)誤9.二維數(shù)組在內(nèi)存中的存儲(chǔ)順序是列優(yōu)先。()答案:錯(cuò)誤10.宏定義在預(yù)編譯階段進(jìn)行替換,不進(jìn)行語法檢查。()答案:正確四、簡答題(每題5分,共4題)1.簡述C語言中函數(shù)的作用。答案:函數(shù)可以將一個(gè)較大的程序分解成多個(gè)較小的模塊,提高程序的可讀性、可維護(hù)性和可復(fù)用性。函數(shù)還可以隱藏實(shí)現(xiàn)細(xì)節(jié),只對(duì)外提供接口,便于多人合作開發(fā)和代碼的重復(fù)使用。2.說明指針在C語言中的用途。答案:指針可用于直接訪問內(nèi)存地址,實(shí)現(xiàn)動(dòng)態(tài)內(nèi)存分配(如malloc等函數(shù)),高效地處理數(shù)組和字符串(如遍歷、修改元素等),在函數(shù)間傳遞數(shù)據(jù)地址實(shí)現(xiàn)雙向數(shù)據(jù)傳遞,以及操作結(jié)構(gòu)體和鏈表等復(fù)雜數(shù)據(jù)結(jié)構(gòu)。3.簡述C語言中結(jié)構(gòu)體的定義和使用方式。答案:結(jié)構(gòu)體通過struct關(guān)鍵字定義,在其中定義不同類型成員變量。使用時(shí)先定義結(jié)構(gòu)體變量,然后通過“.”運(yùn)算符訪問成員(普通結(jié)構(gòu)體變量)或通過“->”運(yùn)算符(結(jié)構(gòu)體指針變量)訪問成員,也可定義結(jié)構(gòu)體數(shù)組等多種用法。4.描述C語言中文件操作的基本步驟。答案:首先用fopen函數(shù)打開文件,根據(jù)需要選擇打開模式。然后使用fread、fwrite等函數(shù)進(jìn)行讀寫操作。操作完成后用fclose函數(shù)關(guān)閉文件。期間可根據(jù)需求使用feof判斷文件末尾,fseek移動(dòng)文件指針等。五、討論題(每題5分,共4題)1.討論在C語言中使用動(dòng)態(tài)內(nèi)存分配的優(yōu)點(diǎn)和缺點(diǎn)。答案:優(yōu)點(diǎn)是可以根據(jù)程序運(yùn)行需求靈活分配內(nèi)存大小,有效利用內(nèi)存資源,如處理動(dòng)態(tài)大小的數(shù)據(jù)結(jié)構(gòu)。缺點(diǎn)是容易產(chǎn)生內(nèi)存泄漏(忘記釋放)、懸空指針(釋放后仍使用指針)等錯(cuò)誤,管理不當(dāng)會(huì)導(dǎo)致程序崩潰。2.探討如何提高C語言程序的運(yùn)行效率。答案:可從算法優(yōu)化(選擇高效算法)、減少不必要的函數(shù)調(diào)用和循環(huán)嵌套、合理使用指針(避免多次間接引用)、優(yōu)化數(shù)據(jù)結(jié)構(gòu)(如選擇合適的數(shù)組或鏈表)等方面提

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論