中國計量大學(xué)《C語言程序設(shè)計》2021-2022學(xué)年第一學(xué)期期末試卷_第1頁
中國計量大學(xué)《C語言程序設(shè)計》2021-2022學(xué)年第一學(xué)期期末試卷_第2頁
中國計量大學(xué)《C語言程序設(shè)計》2021-2022學(xué)年第一學(xué)期期末試卷_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

站名:站名:年級專業(yè):姓名:學(xué)號:凡年級專業(yè)、姓名、學(xué)號錯寫、漏寫或字跡不清者,成績按零分記?!堋狻€…………第1頁,共1頁中國計量大學(xué)

《C語言程序設(shè)計》2021-2022學(xué)年第一學(xué)期期末試卷題號一二三四總分得分一、單選題(本大題共15個小題,每小題1分,共15分.在每小題給出的四個選項中,只有一項是符合題目要求的.)1、在C語言的函數(shù)遞歸調(diào)用中,假設(shè)我們定義了一個遞歸函數(shù)來計算階乘。當(dāng)輸入的數(shù)值較大時,可能會出現(xiàn)什么問題?()A.函數(shù)執(zhí)行速度非常快B.可能會導(dǎo)致棧溢出C.結(jié)果總是準確無誤D.沒有任何問題2、若有定義:inta[5]={1,2,3,4,5},*p=a;,以下不能表示數(shù)組元素a[3]的是()A.*(a+3)B.p[3]C.*(p+3)D.a[3]3、若有定義:inta=3,b=2,c=1;,則表達式a-b>c的值為()A.0B.1C.2D.-14、在C語言中,關(guān)于動態(tài)內(nèi)存分配的錯誤處理,假設(shè)使用

malloc

分配內(nèi)存,以下關(guān)于錯誤處理的描述,哪一項是不正確的?()A.分配內(nèi)存失敗時,

malloc

返回

NULL

,可以通過判斷是否為

NULL

來進行錯誤處理B.忽略對

malloc

返回值的檢查,可能導(dǎo)致程序崩潰C.即使內(nèi)存分配成功,也可能因為后續(xù)的操作導(dǎo)致內(nèi)存訪問錯誤D.一旦內(nèi)存分配成功,就無需再擔(dān)心內(nèi)存相關(guān)的錯誤5、在C語言中,若有定義

structstudent{intnum;charname[20];};

,以下能正確定義結(jié)構(gòu)體變量的是()A.

structstudents={101,"Tom"};

B.

structs={101,"Tom"};

C.

students={101,"Tom"};

D.

structstudent={101,"Tom"};

6、在C語言中,關(guān)于函數(shù)指針的定義和使用,假設(shè)有以下代碼:

int(*funcPtr)(int,int);

,以下關(guān)于函數(shù)指針的描述,正確的是:()A.這是一個指向返回值為

int

,有兩個

int

類型參數(shù)的函數(shù)的指針B.這是一個返回值為指針,參數(shù)為兩個

int

的函數(shù)聲明C.這是一個錯誤的函數(shù)指針定義,C語言中不允許這樣定義D.這是一個指向

int

類型數(shù)組的指針7、在C語言中,關(guān)于指針和數(shù)組的關(guān)系,設(shè)有定義

intarr[5]={1,2,3,4,5};int*ptr=arr;

,那么

ptr+2

指向的元素值是多少?()A.3B.4C.不確定D.運行時錯誤8、C語言中的

volatile

關(guān)鍵字用于修飾變量,其主要作用是什么?()A.提高變量的訪問速度B.防止變量被優(yōu)化器優(yōu)化C.使變量可以被多個線程同時訪問D.以上都不對9、設(shè)有定義:floata=3.14;intb;,則以下能實現(xiàn)將a的值強制轉(zhuǎn)換為整型并賦給b的語句是()A.b=(int)a;B.b=int(a);C.b=(int)(a);D.b=a;10、若有定義:chars[10],*p=s;,以下輸入語句中正確的是()A.scanf("%s",s);B.scanf("%s",p);C.scanf("%c",s);D.scanf("%c",p);11、在C語言中,位操作符常用于對二進制位進行操作。假設(shè)有以下代碼:

unsignedintnum=5;num=num<<2;

,以下關(guān)于位操作后的結(jié)果,正確的是:()A.

num

的值變?yōu)?0B.

num

的值變?yōu)?0C.

num

的值變?yōu)?5D.程序會產(chǎn)生運行時錯誤,因為位操作不正確12、C語言中的位段(

bitfield

)可以用于節(jié)省存儲空間。假設(shè)有

struct{unsignedinta:2;unsignedintb:3;}bitStruct;

,那么這個結(jié)構(gòu)體占用的存儲空間是多少?()A.1字節(jié)B.2字節(jié)C.4字節(jié)D.不確定13、若有定義:inta[3][4]={{1,2},{3,4},{5,6}};則a[1][1]的值是()A.1B.2C.3D.414、假設(shè)在C語言中有以下代碼

enumcolor{RED,GREEN,BLUE};enumcolorc=RED;

,以下描述正確的是:()A.枚舉常量的值可以是任意整數(shù)B.可以對枚舉變量進行算術(shù)運算C.枚舉變量占用的存儲空間大小取決于其最大值D.可以將整數(shù)直接賦值給枚舉變量15、若有定義

inta[5]={1,2,3,4,5};

,則

a[1]

的值是()A.0B.1C.2D.3二、判斷題(本大題共15小題,每小題2分,共30分.有多個選項是符合題目要求的.)1、對于C語言中的條件判斷語句if-else,else總是與離它最近的且沒有配對的if進行匹配。()2、在C語言中,一個函數(shù)內(nèi)定義的變量只在本函數(shù)內(nèi)有效。()3、在C語言中,結(jié)構(gòu)體中的成員可以具有不同的數(shù)據(jù)類型,包括基本數(shù)據(jù)類型和自定義數(shù)據(jù)類型。()4、C語言中,定義了一個函數(shù)

voidswap(int*a,int*b){inttemp=*a;*a=*b;*b=temp;}

,在主函數(shù)中調(diào)用該函數(shù)交換兩個變量的值,這種通過指針傳遞實現(xiàn)交換的方式是有效的。()5、在C語言中,定義一個指針變量

int*ptr

后,如果沒有為其進行初始化或者賦值,就對其進行解引用操作,如

*ptr=5;

,會導(dǎo)致未定義的行為,可能引起程序崩潰。()6、C語言中的指針可以指向一個不存在的內(nèi)存地址,但訪問這樣的指針會導(dǎo)致程序出錯。()7、在C語言中,使用

typedef

定義新的類型名時,不能與已有的基本數(shù)據(jù)類型名相同,否則會引起混淆。()8、在文件操作中,

r+

模式表示可讀可寫,但文件必須存在。()9、在C語言中,

const

修飾的變量不能通過指針來修改其值。()10、

fread

函數(shù)和

fwrite

函數(shù)可以用于結(jié)構(gòu)體的讀寫。()11、在C語言中,

strupr

函數(shù)用于將字符串中的所有字符轉(zhuǎn)換為大寫。()12、C語言中的預(yù)編譯指令可以嵌套使用,以實現(xiàn)更復(fù)雜的條件編譯控制。()13、對于

intarr[10];

,可以使用

memcmp

函數(shù)比較數(shù)組的內(nèi)容是否相同。()14、

calloc

函數(shù)分配的內(nèi)存空間會自動初始化為0。()15、C語言中的枚舉類型中的枚舉常量實際上是整數(shù),并且可以進行整數(shù)運算。()三、編程題(本大題共5個小題,共25分)1、(本題5分)設(shè)計一個C語言程序,實現(xiàn)插入排序算法對整數(shù)數(shù)組進行排序。2、(本題5分)編寫一個C語言程序,實現(xiàn)一個函數(shù),接受一個字符串作為參數(shù),返回字符串中字符的個數(shù)。3、(本題5分)設(shè)計一個C語言程序,模擬實現(xiàn)一個簡單的銀行賬戶管理系統(tǒng)。能夠進行存款、取款、查詢余額等操作。4、(本題5分)編寫一個C語言程序,實現(xiàn)一個函數(shù),將一個整數(shù)轉(zhuǎn)換為對應(yīng)的二進制字符串并返回。用戶輸入整數(shù),調(diào)用函數(shù)輸出結(jié)果。5、(本題5分)創(chuàng)建一個C語言程序,用戶輸入一個整數(shù)n,程序輸出一個n行的數(shù)字金字塔。四、論述題(本大題共3個小題,共30分)1、(本題10分)詳細闡述

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論