中南民族大學(xué)《C程序設(shè)計及醫(yī)學(xué)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷_第1頁
中南民族大學(xué)《C程序設(shè)計及醫(yī)學(xué)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷_第2頁
中南民族大學(xué)《C程序設(shè)計及醫(yī)學(xué)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷_第3頁
中南民族大學(xué)《C程序設(shè)計及醫(yī)學(xué)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷_第4頁
中南民族大學(xué)《C程序設(shè)計及醫(yī)學(xué)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

學(xué)校________________班級____________姓名____________考場____________準(zhǔn)考證號學(xué)校________________班級____________姓名____________考場____________準(zhǔn)考證號…………密…………封…………線…………內(nèi)…………不…………要…………答…………題…………第2頁,共2頁中南民族大學(xué)

《C程序設(shè)計及醫(yī)學(xué)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷題號一二三四總分得分一、單選題(本大題共15個小題,每小題1分,共15分.在每小題給出的四個選項中,只有一項是符合題目要求的.)1、假設(shè)在C語言中有以下結(jié)構(gòu)體定義

structstudent{intid;charname[20];floatscore;};

,以下關(guān)于結(jié)構(gòu)體的描述,正確的是:()A.可以直接將一個結(jié)構(gòu)體變量賦值給另一個結(jié)構(gòu)體變量B.結(jié)構(gòu)體成員的訪問可以使用

struct.student.id

的形式C.結(jié)構(gòu)體數(shù)組中的元素不能通過指針進(jìn)行訪問D.結(jié)構(gòu)體變量所占的內(nèi)存空間是其各成員所占空間之和2、在C語言中,指針是一個強(qiáng)大但也容易出錯的概念。假設(shè)我們有以下代碼段:

inta=5;int*p=&a;

,然后執(zhí)行

*p=10;

。那么此時變量

a

的值會發(fā)生什么變化?()A.保持不變,仍為5B.變?yōu)?0C.變?yōu)殡S機(jī)值D.程序會出錯3、C語言中,對于以下代碼:

voidfunc(char*str){str[0]='A';}

,如果在主函數(shù)中調(diào)用

func

函數(shù)并傳遞一個字符串常量,會發(fā)生什么?()A.成功修改字符串常量的第一個字符B.程序會出錯C.不確定,取決于編譯器D.沒有任何變化4、若有定義:inta=7;floatx=2.5,y=4.7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值是()A.2.500000B.2.750000C.3.500000D.0.0000005、在C語言的選擇結(jié)構(gòu)中,對于

if

語句和

switch

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

if

語句只能判斷條件是否成立,不能處理多個分支情況B.

switch

語句中的表達(dá)式只能是整數(shù)類型C.

switch

語句中的

case

標(biāo)簽值必須是連續(xù)的D.在復(fù)雜的條件判斷中,

switch

語句總是比

if

語句更高效6、設(shè)有以下C語言代碼段:

structstudent{intid;charname[20];};structstudents={101,"Alice"};

,若要輸出學(xué)生的名字,以下哪個選項是正確的?()A.

printf("%s",);

B.

printf("%s",&);

C.

printf("%s",s->name);

D.

printf("%s",(*s).name);

7、C語言中的自增(

++

)和自減(

--

)運(yùn)算符需要注意運(yùn)算順序。假設(shè)有

inta=5;intb=++a;

,那么

b

的值是多少?()A.5B.6C.7D.不確定8、在C語言中,若有函數(shù)聲明

voidf(int*p)

,調(diào)用該函數(shù)時,以下傳遞參數(shù)的方式正確的是:()A.

f(5)

B.

f(&5)

C.

f(int*q)

D.

f(&a)

(其中

inta;

)9、若有定義:charstr[20]="HelloWorld!";則strlen(str)的值是()A.11B.12C.20D.1310、在C語言的預(yù)處理器指令中,

#define

用于定義常量和宏。假設(shè)定義了

#definePI3.14

#defineSQUARE(x)(x*x)

,以下關(guān)于預(yù)處理器指令的描述,哪一項是不正確的?()A.在程序中使用

PI

就相當(dāng)于使用3.14B.宏

SQUARE(x)

在展開時會進(jìn)行參數(shù)的替換和表達(dá)式的計算C.預(yù)處理器指令在編譯前進(jìn)行處理,會改變源代碼的結(jié)構(gòu)D.宏定義中的參數(shù)不需要指定數(shù)據(jù)類型11、若有定義:inta[2][3]={{1,2,3},{4,5,6}};則*(*(a+1)+2)的值是()A.3B.4C.5D.612、C語言中的字符串常量存儲在只讀的內(nèi)存區(qū)域。假設(shè)定義了

char*str="Hello"

,以下關(guān)于字符串常量的描述,哪一項是錯誤的?()A.試圖修改字符串常量的內(nèi)容會導(dǎo)致運(yùn)行時錯誤B.可以通過指針來操作字符串常量C.字符串常量在程序結(jié)束后會自動釋放內(nèi)存D.多個相同的字符串常量在內(nèi)存中只有一份副本13、C語言中的數(shù)組在編程中經(jīng)常被使用。假設(shè)有以下定義:

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

,以下關(guān)于數(shù)組的描述,正確的是:()A.可以通過

arr[5]

來訪問數(shù)組的第六個元素,不會導(dǎo)致錯誤B.數(shù)組名

arr

代表數(shù)組的首地址,同時也是一個常量C.可以將一個數(shù)組直接賦值給另一個數(shù)組,如

intarr2[5]=arr;

D.數(shù)組的長度在定義后不能改變,但其元素的值可以通過指針隨意修改14、C語言中的選擇結(jié)構(gòu)

if-else

用于根據(jù)條件執(zhí)行不同的代碼塊。假設(shè)有以下代碼:

intnum=15;if(num>10&&num<20){printf("Numberisinrange\n");}else{printf("Numberisoutofrange\n");}

,以下關(guān)于這段代碼的輸出,正確的是:()A."Numberisinrange"B."Numberisoutofrange"C.程序會產(chǎn)生運(yùn)行時錯誤,因為條件判斷不正確D.沒有輸出,因為

if-else

結(jié)構(gòu)的條件不完整15、在C語言中,關(guān)于宏定義的使用,有如下代碼:

#defineSQUARE(x)(x*x)

,若有表達(dá)式

SQUARE(2+3)

,其計算結(jié)果是多少?()A.25B.11C.10D.不確定二、判斷題(本大題共15小題,每小題2分,共30分.有多個選項是符合題目要求的.)1、在C語言中,使用typedef定義新類型后,原類型名就不能再使用了。()2、C語言中,對于字符串處理函數(shù)

strcat

,如果目標(biāo)字符串的空間不足以容納連接后的結(jié)果,程序會自動擴(kuò)展目標(biāo)字符串的空間以完成連接操作。()3、

inta=5;

,然后執(zhí)行

int*p=&a;*p=10;

,此時變量

a

的值會變?yōu)?0。()4、在C語言中,

short

類型的變量占用的存儲空間比

int

類型少。()5、在C語言中,使用fputs函數(shù)向文件寫入字符串時,不會自動添加換行符。()6、在C語言中,使用ftell函數(shù)可以獲取文件指針當(dāng)前的位置。()7、對于C語言中的字符串函數(shù)strspn,它可以計算字符串開頭連續(xù)匹配指定字符集的字符個數(shù)。()8、C語言中的

sprintf

函數(shù)用于將數(shù)據(jù)格式化輸出到字符串中。()9、在C語言中,使用

strcpy

函數(shù)將一個較長的字符串復(fù)制到較短的字符數(shù)組中,會導(dǎo)致未定義的行為。()10、在C語言中,

fprintf

函數(shù)可以將數(shù)據(jù)按照指定的格式輸出到文件中。()11、在C語言中,

float

類型和

double

類型在存儲小數(shù)時,

double

類型的精度更高,范圍更廣。()12、C語言中的枚舉類型中的枚舉常量的值可以由用戶指定。()13、C語言中的數(shù)組初始化可以在定義時進(jìn)行,未初始化的數(shù)組元素的值是不確定的,可能會導(dǎo)致意外的結(jié)果。()14、C語言中的文件在讀寫操作完成后,如果不關(guān)閉,可能會導(dǎo)致數(shù)據(jù)丟失或文件損壞。()15、C語言中的邏輯運(yùn)算符(&&、||、!)的操作數(shù)只能是布爾值。()三、編程題(本大題共5個小題,共25分)1、(本題5分)編寫一個C語言程序,實現(xiàn)一個簡單的隊列結(jié)構(gòu),并進(jìn)行入隊、出隊操作。2、(本題5分)創(chuàng)建一個C程序,輸入一個整數(shù)數(shù)組及數(shù)組長度,找出其中所有“相鄰元素之和為奇數(shù)”的元素對。3、(本題5分)編寫一個C語言程序,輸入一個整數(shù)n,創(chuàng)建一個n×n的二維數(shù)組,按照順時針方向螺旋填充數(shù)字1到n^2,并輸出數(shù)組。4、(本題5分)編寫一個C語言程序,輸入一個整數(shù)n,判斷n是否為阿姆斯特朗數(shù)(如果一個n位正整數(shù)等于其各位數(shù)字的n次方之和,則稱該數(shù)為阿姆斯特朗數(shù))。5、(本題5分)設(shè)計一個C語言程序,輸

溫馨提示

  • 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

提交評論