山東鋁業(yè)職業(yè)學(xué)院《面向?qū)ο驝程序設(shè)計(jì)1》2024-2025學(xué)年第一學(xué)期期末試卷_第1頁
山東鋁業(yè)職業(yè)學(xué)院《面向?qū)ο驝程序設(shè)計(jì)1》2024-2025學(xué)年第一學(xué)期期末試卷_第2頁
山東鋁業(yè)職業(yè)學(xué)院《面向?qū)ο驝程序設(shè)計(jì)1》2024-2025學(xué)年第一學(xué)期期末試卷_第3頁
山東鋁業(yè)職業(yè)學(xué)院《面向?qū)ο驝程序設(shè)計(jì)1》2024-2025學(xué)年第一學(xué)期期末試卷_第4頁
山東鋁業(yè)職業(yè)學(xué)院《面向?qū)ο驝程序設(shè)計(jì)1》2024-2025學(xué)年第一學(xué)期期末試卷_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

學(xué)校________________班級____________姓名____________考場____________準(zhǔn)考證號學(xué)校________________班級____________姓名____________考場____________準(zhǔn)考證號…………密…………封…………線…………內(nèi)…………不…………要…………答…………題…………第1頁,共2頁山東鋁業(yè)職業(yè)學(xué)院《面向?qū)ο驝程序設(shè)計(jì)1》2024-2025學(xué)年第一學(xué)期期末試卷題號一二三四總分得分一、單選題(本大題共15個(gè)小題,每小題1分,共15分.在每小題給出的四個(gè)選項(xiàng)中,只有一項(xiàng)是符合題目要求的.)1、在C語言中,指針和數(shù)組在某些情況下可以相互轉(zhuǎn)換。假設(shè)定義了

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

int*ptr=arr;

,以下關(guān)于指針和數(shù)組轉(zhuǎn)換的描述,哪一項(xiàng)是不正確的?()A.在大多數(shù)情況下,數(shù)組名可以看作是一個(gè)指向數(shù)組首元素的指針B.可以通過指針的加減運(yùn)算來訪問數(shù)組中的元素,就像使用數(shù)組下標(biāo)一樣C.對指針進(jìn)行取地址操作

&ptr

得到的是指針本身的地址,而不是數(shù)組的地址D.數(shù)組和指針在內(nèi)存中的存儲方式完全相同2、在C語言中,若要?jiǎng)討B(tài)分配一個(gè)整型數(shù)組,以下哪個(gè)函數(shù)是正確的?()A.int*arr=(int*)malloc(sizeof(int)*10);B.int*arr=(int*)calloc(10,sizeof(int));C.int*arr=newint[10];D.以上都正確3、在C語言中,若要定義一個(gè)包含10個(gè)整數(shù)的數(shù)組,以下哪種方式是正確的?()A.intnum[10];B.intnum(10);C.intnum[10]={0};D.intnum[]={1,2,3,4,5,6,7,8,9,10};4、以下C語言代碼段的輸出結(jié)果是什么?intarr[]={1,2,3,4,5};for(inti=0;i<5;i++)printf("%d",arr[i]);()A.12345B.54321C.01234D.程序報(bào)錯(cuò)5、若有定義: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.0000006、對于C語言中的文件操作,若要判斷文件是否成功關(guān)閉,以下哪個(gè)函數(shù)是可用的?()A.feof()B.ferror()C.fclose()D.以上都不是7、在C語言中,關(guān)于指針的概念和使用是一個(gè)重要且復(fù)雜的部分。假設(shè)我們有以下代碼段:

inta=5;int*p=&a;

。以下關(guān)于指針

p

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

*p

的值為5,

p

存儲的是變量

a

的值B.

*p

的值為變量

a

的地址,

p

存儲的是5C.

*p

的值為5,

p

存儲的是變量

a

的地址D.

*p

的值為變量

a

的地址,

p

存儲的也是變量

a

的地址8、C語言中,關(guān)于函數(shù)指針,設(shè)有以下代碼:

int(*func_ptr)(int,int);

,以下哪種說法是正確的?()A.

func_ptr

是一個(gè)指向返回值為

int

,有兩個(gè)

int

類型參數(shù)的函數(shù)的指針B.

func_ptr

是一個(gè)返回值為指針的函數(shù),該指針指向

int

類型C.

func_ptr

是一個(gè)

int

類型的指針D.以上都不對9、C語言中的聯(lián)合(

union

)是一種特殊的數(shù)據(jù)類型。假設(shè)我們有

unionData{intnum;floatfnum;};

,并且創(chuàng)建了一個(gè)

unionData

類型的變量,以下關(guān)于這個(gè)聯(lián)合變量的使用,哪一個(gè)是正確的?()A.可以同時(shí)存儲

int

float

類型的值B.在同一時(shí)間只能存儲

int

float

類型的值C.可以存儲多個(gè)不同類型的值D.以上都不對10、在C語言中,關(guān)于函數(shù)指針的使用,假設(shè)有函數(shù)

intadd(inta,intb){returna+b;}

,定義一個(gè)函數(shù)指針

int(*funcPtr)(int,int)=add;

,通過這個(gè)函數(shù)指針調(diào)用函數(shù),以下哪種方式是正確的?()A.

funcPtr(2,3);

B.

(*funcPtr)(2,3);

C.以上兩種都對D.以上兩種都不對11、假設(shè)在C語言中有以下代碼

typedefintINT;

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

INT

int

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

INTa,b;

來定義變量C.

typedef

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

typedef

只是給已有類型起了一個(gè)別名,不會(huì)創(chuàng)建新的類型12、以下C語言代碼段的輸出結(jié)果是什么?floatf=3.14;printf("%d",f);()A.3B.3.14C.程序報(bào)錯(cuò)D.隨機(jī)值13、在C語言中,關(guān)于動(dòng)態(tài)內(nèi)存分配,使用

malloc

函數(shù)分配內(nèi)存后,如果不再使用,應(yīng)該使用哪個(gè)函數(shù)釋放內(nèi)存?()A.

free

B.

delete

C.

release

D.不需要釋放14、C語言中的

volatile

關(guān)鍵字用于修飾變量,其主要作用是什么?()A.提高變量的訪問速度B.防止變量被優(yōu)化器優(yōu)化C.使變量可以被多個(gè)線程同時(shí)訪問D.以上都不對15、設(shè)有定義:charstr[]="HelloWorld";,則數(shù)組str的長度是()A.10B.11C.12D.不確定二、判斷題(本大題共15小題,每小題2分,共30分.有多個(gè)選項(xiàng)是符合題目要求的.)1、C語言中,fputs函數(shù)用于向文件寫入一個(gè)字符串。()2、C語言中的

rewind

函數(shù)用于將文件指針重新定位到文件的開頭。()3、C語言中,對于共用體

unionData{intnum;charstr[10];};

,可以同時(shí)給

num

str

賦值。()4、在C語言中,使用fscanf函數(shù)讀取格式化數(shù)據(jù)時(shí),如果輸入不匹配會(huì)導(dǎo)致錯(cuò)誤。()5、在C語言中,宏定義可以包含操作符和表達(dá)式,在展開時(shí)會(huì)按照預(yù)定義的規(guī)則進(jìn)行計(jì)算。()6、對于C語言中的字符串,字符串結(jié)束標(biāo)志'\0'會(huì)占用字符串存儲空間的一個(gè)字節(jié),所以字符串實(shí)際存儲長度比字符數(shù)量多1。()7、C語言中的文件在讀寫操作完成后,如果不關(guān)閉,可能會(huì)導(dǎo)致數(shù)據(jù)丟失或文件損壞。()8、對于

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

,可以通過

*(a[0]+1)

訪問到數(shù)組中的元素2。()9、在C語言中,

strrev

函數(shù)可以反轉(zhuǎn)字符串的順序。()10、在C語言中,函數(shù)的遞歸調(diào)用需要有明確的結(jié)束條件,否則會(huì)導(dǎo)致無限遞歸,造成棧溢出,使程序崩潰。()11、C語言中的數(shù)組名本身就是一個(gè)指針,指向數(shù)組的首元素。()12、在C語言中,使用fread函數(shù)從文件讀取數(shù)據(jù)時(shí),可以指定每次讀取的數(shù)據(jù)大小。()13、C語言中,對于數(shù)組

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

,可以通過

sizeof(arr)/sizeof(arr[0])

計(jì)算數(shù)組的元素個(gè)數(shù)。()14、在C語言中,

const

修飾的指針可以分為指向常量的指針和指針本身是常量兩種情況,其含義和使用方式不同。()15、C語言中的宏定義可以使用#if指令進(jìn)行條件判斷,根據(jù)條件決定是否展開。()三、編程題(本大題共5個(gè)小題,共25分)1、(本題5分)創(chuàng)建一個(gè)C程序,輸入兩個(gè)字符串,判斷它們是否為旋轉(zhuǎn)字符串(即一個(gè)字符串通過旋轉(zhuǎn)可以得到另一個(gè)字符串)。2、(本題5分)編寫一個(gè)C語言程序,實(shí)現(xiàn)對一個(gè)給定的整數(shù)數(shù)組進(jìn)行冒泡排序,排序完成后輸出排序后的數(shù)組。3、(本題5分)設(shè)計(jì)一個(gè)C語言程序,輸入一個(gè)整數(shù)數(shù)組和一個(gè)整數(shù)k,計(jì)算數(shù)組中所有元素與k的乘積的和。4、(本題5分)編寫C程序,輸入一個(gè)字符串,判斷其是否為回文單詞(忽略大小寫)。5、(本題5分)設(shè)計(jì)一個(gè)C語言程序,輸入一個(gè)鏈表,刪除

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論