吉林財經(jīng)大學(xué)《單片機(jī)C語言程序設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷_第1頁
吉林財經(jīng)大學(xué)《單片機(jī)C語言程序設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷_第2頁
吉林財經(jīng)大學(xué)《單片機(jī)C語言程序設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷_第3頁
吉林財經(jīng)大學(xué)《單片機(jī)C語言程序設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷_第4頁
吉林財經(jīng)大學(xué)《單片機(jī)C語言程序設(shè)計》2023-2024學(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)…………不…………要…………答…………題…………第1頁,共3頁吉林財經(jīng)大學(xué)《單片機(jī)C語言程序設(shè)計》

2023-2024學(xué)年第一學(xué)期期末試卷題號一二三四總分得分一、單選題(本大題共15個小題,每小題1分,共15分.在每小題給出的四個選項(xiàng)中,只有一項(xiàng)是符合題目要求的.)1、在C語言中,若有函數(shù)聲明

intfun(inta,floatb);

,以下調(diào)用正確的是()A.

fun(1.5,2);

B.

fun(1,2.5);

C.

fun(1,2);

D.

fun(1.5,2.5);

2、在C語言中,關(guān)于靜態(tài)變量的使用,假設(shè)有以下函數(shù):

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

,多次調(diào)用

func

函數(shù),以下輸出結(jié)果正確的是:()A.每次輸出都是1B.輸出依次為1,2,3,...C.輸出結(jié)果不確定,取決于調(diào)用的順序D.程序會產(chǎn)生運(yùn)行時錯誤,因?yàn)殪o態(tài)變量使用不正確3、C語言中的數(shù)組是一種重要的數(shù)據(jù)結(jié)構(gòu)。假設(shè)定義了一個整數(shù)數(shù)組

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

,以下關(guān)于數(shù)組操作的描述,哪一項(xiàng)是不準(zhǔn)確的?()A.可以通過

arr[0]

arr[4]

的方式訪問數(shù)組的每個元素B.數(shù)組的大小在定義后就不能改變C.可以將一個數(shù)組直接賦值給另一個同類型且大小相同的數(shù)組D.可以通過指針來操作數(shù)組,例如

int*p=arr;

4、在C語言中,若有定義

inta[10]={1,2,3,4,5,6,7,8,9,10};

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

a[10]

訪問數(shù)組的最后一個元素B.數(shù)組

a

的長度是可以動態(tài)改變的C.使用

for

循環(huán)遍歷數(shù)組時,循環(huán)條件可以是

i<10

D.數(shù)組元素的存儲順序是從大到小5、假設(shè)在C語言中有以下代碼

typedefintINT;

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

INT

int

是完全不同的類型B.可以使用

INTa,b;

來定義變量C.

typedef

定義的新類型不能用于函數(shù)參數(shù)和返回值類型D.

typedef

只是給已有類型起了一個別名,不會創(chuàng)建新的類型6、在C語言中,指針是一個強(qiáng)大但也容易出錯的概念。假設(shè)我們有以下代碼段:

inta=5;int*p=&a;

,然后執(zhí)行

*p=10;

。那么此時變量

a

的值會發(fā)生什么變化?()A.保持不變,仍為5B.變?yōu)?0C.變?yōu)殡S機(jī)值D.程序會出錯7、在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ù)組的指針8、C語言中的選擇結(jié)構(gòu)(如

if-else

)使用廣泛。假設(shè)有

inta=10,b=20;

,執(zhí)行

if(a>b)printf("A");elseprintf("B");

,會輸出什么?()A.AB.BC.先輸出A,再輸出BD.程序出錯9、若有定義:inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};,則((a+1)+1)的值是()A.6B.7C.8D.910、在C語言的函數(shù)調(diào)用中,參數(shù)傳遞的方式有值傳遞和地址傳遞。假設(shè)有以下函數(shù)定義:

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

,以及主函數(shù)中的調(diào)用

intx=3,y=5;swap(&x,&y);

。以下關(guān)于函數(shù)

swap

的作用,正確的是:()A.函數(shù)

swap

不能交換

x

y

的值,因?yàn)槭侵祩鬟fB.函數(shù)

swap

可以交換

x

y

的值,并且這種交換在主函數(shù)中是有效的C.函數(shù)

swap

可以交換

x

y

的值,但這種交換只在函數(shù)內(nèi)部有效,主函數(shù)中的

x

y

值不變D.函數(shù)

swap

會導(dǎo)致程序運(yùn)行錯誤,因?yàn)橹羔樀氖褂貌徽_11、有關(guān)C語言中的volatile關(guān)鍵字,以下陳述不正確的是()A.volatile關(guān)鍵字用于告訴編譯器,變量的值可能會被意外地改變,不要進(jìn)行優(yōu)化B.多線程環(huán)境中共享的變量通常應(yīng)該使用volatile關(guān)鍵字修飾C.使用volatile關(guān)鍵字修飾的變量,其讀寫操作一定是原子性的D.硬件寄存器通常使用volatile關(guān)鍵字修飾12、在C語言的函數(shù)遞歸調(diào)用中,假設(shè)我們定義了一個遞歸函數(shù)來計算階乘。當(dāng)輸入的數(shù)值較大時,可能會出現(xiàn)什么問題?()A.函數(shù)執(zhí)行速度非??霣.可能會導(dǎo)致棧溢出C.結(jié)果總是準(zhǔn)確無誤D.沒有任何問題13、若有定義:chars[100];以下不能正確把字符串"HelloWorld"存入數(shù)組s的語句是()A.gets(s);B.scanf("%s",s);C.strcpy(s,"HelloWorld");D.strcat(s,"HelloWorld");14、C語言中,對于以下代碼:

typedefstruct{intx;inty;}point;

,以下說法正確的是?()A.創(chuàng)建了一個名為

point

的變量B.定義了一個新的數(shù)據(jù)類型

point

C.以上都不對D.聲明了一個結(jié)構(gòu)體指針

point

15、若有定義:charstr[20]="HelloWorld";,則strlen(str)的值為()A.11B.12C.19D.20二、判斷題(本大題共15小題,每小題2分,共30分.有多個選項(xiàng)是符合題目要求的.)1、C語言中的

ftell

函數(shù)用于獲取文件指針當(dāng)前的位置。()2、在C語言中,數(shù)組名作為函數(shù)參數(shù)傳遞時,在函數(shù)內(nèi)部對數(shù)組的修改會影響到原數(shù)組。()3、在C語言中,

atoi

函數(shù)用于將字符串轉(zhuǎn)換為整數(shù),如果字符串不是有效的整數(shù)表示,其行為是未定義的。()4、C語言中的指針可以進(jìn)行比較運(yùn)算,比較的是指針?biāo)赶虻牡刂?。(?、在C語言中,

short

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

int

類型少。()6、在C語言中,

#ifndef

#endif

配合使用可以防止頭文件被重復(fù)包含。()7、C語言中的結(jié)構(gòu)體可以包含結(jié)構(gòu)體指針類型的成員變量。()8、

charstr[]="Hello";char*ptr=str;ptr[0]='M';

,這樣修改字符串的操作是不合法的,因?yàn)樽址A客ǔJ遣豢尚薷牡摹#ǎ?、C語言中的字符串處理函數(shù)strstr用于在一個字符串中查找另一個字符串首次出現(xiàn)的位置。()10、在C語言中,對于文件讀寫操作,如果以

r+

模式打開文件,既可以讀取文件內(nèi)容,也可以向文件寫入數(shù)據(jù),但寫入數(shù)據(jù)時會覆蓋原有數(shù)據(jù)。()11、在C語言中,定義一個指針變量后,就可以直接對其進(jìn)行解引用操作,獲取其所指向的數(shù)據(jù)。()12、C語言中的結(jié)構(gòu)體可以包含聯(lián)合體(union)類型的成員變量。()13、C語言中的文件操作模式(如"r"、"w"、"a"等)決定了對文件的操作方式,如只讀、只寫、追加等,并且在打開文件時必須指定正確的操作模式。()14、C語言中的條件編譯可以根據(jù)不同的條件選擇編譯不同的代碼段,從而實(shí)現(xiàn)代碼的優(yōu)化和可移植性。()15、在C語言中,定義了一個結(jié)構(gòu)體變量

structPointp1,p2;

,可以使用

p1=p2;

直接將

p2

的值賦給

p1

。()三、編程題(本大題共5個小題,共25分)1、(本題5分)設(shè)計一個C程序,用戶輸入一個整數(shù)n,打印出一個n行的空心菱形圖案,使用*號表示。2、(本題5分)編寫一個C語言程序,用戶輸入一個整數(shù)n,計算并輸出n以內(nèi)能同時被2和3整除的數(shù)的個數(shù)。3、(本題5分)編寫C程序,輸入一個正整數(shù)n,計算并輸出1到n之間所有數(shù)的立方根之和。4、(本題5分)用C語言創(chuàng)建一個程序,用戶輸入一個字符串,程序找出其中所有由相同字符組成的子串,并輸出這些子串。5、(本題5分)編寫一個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

提交評論