山西大學(xué)《C語言程序設(shè)計基礎(chǔ)實驗》2021-2022學(xué)年第一學(xué)期期末試卷_第1頁
山西大學(xué)《C語言程序設(shè)計基礎(chǔ)實驗》2021-2022學(xué)年第一學(xué)期期末試卷_第2頁
山西大學(xué)《C語言程序設(shè)計基礎(chǔ)實驗》2021-2022學(xué)年第一學(xué)期期末試卷_第3頁
山西大學(xué)《C語言程序設(shè)計基礎(chǔ)實驗》2021-2022學(xué)年第一學(xué)期期末試卷_第4頁
山西大學(xué)《C語言程序設(shè)計基礎(chǔ)實驗》2021-2022學(xué)年第一學(xué)期期末試卷_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

裝訂線裝訂線PAGE2第1頁,共3頁山西大學(xué)《C語言程序設(shè)計基礎(chǔ)實驗》

2021-2022學(xué)年第一學(xué)期期末試卷院(系)_______班級_______學(xué)號_______姓名_______題號一二三四總分得分批閱人一、單選題(本大題共15個小題,每小題1分,共15分.在每小題給出的四個選項中,只有一項是符合題目要求的.)1、關(guān)于C語言中的預(yù)處理器指令,如

#define

,假設(shè)有

#definePI3.14

,然后在代碼中使用

floatarea=PI*r*r;

,這里的

PI

會被如何處理?()A.在編譯時被替換為3.14B.在運行時被替換為3.14C.保持不變,作為一個變量D.導(dǎo)致編譯錯誤2、若有以下定義:chars1[]="program",s2[]="language";則能將字符串“l(fā)anguage”連接到字符串“program”后面的函數(shù)調(diào)用是()A.strcat(s1,s2);B.strcpy(s1,s2);C.strcmp(s1,s2);D.strlen(s1);3、在C語言中,關(guān)于指針和數(shù)組的關(guān)系是一個復(fù)雜但重要的概念。假設(shè)我們有一個整型數(shù)組

intarr[10]

,同時有一個整型指針

int*ptr

。以下對于指針和數(shù)組關(guān)系的描述,哪一項是不準(zhǔn)確的?()A.數(shù)組名可以看作是一個指向數(shù)組首元素的常量指針B.可以通過指針來遍歷數(shù)組的元素,就像通過數(shù)組下標(biāo)一樣C.對指針進(jìn)行加減運算時,移動的步長取決于指針?biāo)赶虻臄?shù)據(jù)類型的大小D.數(shù)組和指針在內(nèi)存中的存儲方式完全相同,沒有任何區(qū)別4、在C語言中,關(guān)于靜態(tài)變量,設(shè)有函數(shù)

voidfun(){staticintcount=0;count++;printf("%d",count);}

,連續(xù)調(diào)用該函數(shù)3次,輸出結(jié)果是什么?()A.123B.012C.111D.0005、若有定義:charstr[20]="HelloWorld";,則strlen(str)的值為()A.11B.12C.19D.206、在C語言的位運算中,以下關(guān)于按位與(&)、按位或(|)和按位異或(^)的說法,錯誤的是()A.按位與運算可以用來將某些位清零,而保持其他位不變B.按位或運算可以用來將某些位置1,而保持其他位不變C.按位異或運算可以用來交換兩個變量的值,而無需使用臨時變量D.位運算只能用于整數(shù)類型的數(shù)據(jù),不能用于浮點數(shù)類型7、在C語言中,若有以下代碼段:inta=5,b=3;intc=a+++b;執(zhí)行完后,c的值是多少?()A.8B.9C.7D.108、若有定義:floata[3]={1.2,2.3,3.4};則a[1]的值是()A.1.2B.2.3C.3.4D.09、C語言中,對于預(yù)處理器指令

#include

,以下描述正確的是:()A.

#include

指令只能包含.c文件B.包含的頭文件可以寫在程序的任意位置C.重復(fù)包含同一個頭文件會導(dǎo)致編譯錯誤D.可以使用尖括號

<>

和雙引號

""

來指定包含的文件,它們的區(qū)別在于搜索路徑不同10、在C語言中,關(guān)于結(jié)構(gòu)體指針的使用,假設(shè)定義了結(jié)構(gòu)體

structBook{chartitle[50];intprice;};

structBook*ptr;

,以下關(guān)于結(jié)構(gòu)體指針的描述,哪一項是不準(zhǔn)確的?()A.可以通過

ptr->title

訪問結(jié)構(gòu)體成員B.結(jié)構(gòu)體指針可以指向結(jié)構(gòu)體數(shù)組的元素C.使用結(jié)構(gòu)體指針可以更高效地操作結(jié)構(gòu)體數(shù)據(jù)D.結(jié)構(gòu)體指針本身的大小與結(jié)構(gòu)體的大小相同11、若有定義:inta[5]={1,2,3,4,5},*p=a;則以下不能表示數(shù)組a中元素a[3]的是()A.*(p+3)B.p[3]C.*(a+3)D.p+312、設(shè)有以下C語言函數(shù):

intfun(intn){if(n<=0)return0;elsereturnn+fun(n-1);}

,調(diào)用

fun(5)

的返回值是多少?()A.5B.10C.15D.不確定13、在C語言中,設(shè)有以下宏定義

#defineMAX(a,b)((a)>(b)?(a):(b))

,那么

MAX(3+2,5)

的值是多少?()A.5B.6C.8D.不確定14、在C語言中,關(guān)于函數(shù)的默認(rèn)返回值類型,如果沒有明確指定,默認(rèn)是什么類型?()A.

void

B.

int

C.

float

D.沒有默認(rèn)類型,必須指定15、若有定義

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

,則

a[1]

的值是()A.0B.1C.2D.3二、判斷題(本大題共15小題,每小題2分,共30分.有多個選項是符合題目要求的.)1、在C語言中,函數(shù)的返回值類型如果是void,則表示該函數(shù)不能返回任何值,并且在函數(shù)內(nèi)部也不能使用return語句返回任何值。()2、在C語言中,指針可以進(jìn)行加減運算,其運算結(jié)果與指針?biāo)赶虻臄?shù)據(jù)類型的字節(jié)數(shù)有關(guān)。()3、在C語言中,

struct

結(jié)構(gòu)體中的成員可以是另一個結(jié)構(gòu)體類型,從而實現(xiàn)結(jié)構(gòu)體的嵌套。()4、C語言中的

goto

語句可以無條件跳轉(zhuǎn)到程序中的任意位置,但過度使用會使程序結(jié)構(gòu)混亂,應(yīng)謹(jǐn)慎使用。()5、C語言中的位運算符~是按位取反運算符,可以將一個整數(shù)的每一位取反。()6、C語言中的

qsort

函數(shù)可以對任意類型的數(shù)組進(jìn)行排序,但需要提供一個比較函數(shù)來定義元素的排序規(guī)則。()7、C語言中的宏定義可以帶參數(shù),參數(shù)可以在宏體中使用。()8、C語言中,continue語句可以用于switch語句中。()9、在C語言中,使用strcmpi函數(shù)可以進(jìn)行不區(qū)分大小寫的字符串比較。()10、C語言中的文件操作中,以“a+”模式打開文件,如果文件不存在會創(chuàng)建新文件,如果存在則在文件末尾追加數(shù)據(jù)。()11、C語言中的共用體(union)的所有成員共享同一段內(nèi)存空間。()12、C語言中的條件編譯可以用于根據(jù)不同的條件選擇不同的代碼段進(jìn)行編譯。()13、

fopen

函數(shù)打開文件失敗時會返回一個非空指針。()14、C語言中的

malloc

函數(shù)分配的內(nèi)存空間未初始化,其內(nèi)容是不確定的。()15、C語言中的自增自減運算符

++

--

可以放在變量的前面或后面,放在前面是先進(jìn)行自增自減操作再參與其他運算,放在后面是先參與其他運算再進(jìn)行自增自減操作。()三、編程題(本大題共5個小題,共25分)1、(本題5分)設(shè)計一個C語言程序,輸入一個字符串,判斷其是否為回文串(即正著讀和倒著讀都一樣的字符串)。2、(本題5分)用C語言創(chuàng)建一個程序,用戶輸入一個字符串,程序找出其中所有由相同字符組成的子串,并輸出這些子串。3、(本題5分)編寫一個C語言程序,實現(xiàn)輸入一個整數(shù)數(shù)組,使用歸并排序?qū)?shù)組進(jìn)行排序并輸出排序后的數(shù)組。4、(本題5分)編寫C程序,輸入一個整數(shù)n,打印出n行的空心菱形。5、(本題5分)編寫一個C語言程序,要求用戶輸入一個矩陣的行數(shù)和列數(shù),然后輸入矩陣的元素,計算并輸出矩陣的轉(zhuǎn)置。四、論述題(本大題

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論