C語(yǔ)言實(shí)踐中常見(jiàn)的試題及答案_第1頁(yè)
C語(yǔ)言實(shí)踐中常見(jiàn)的試題及答案_第2頁(yè)
C語(yǔ)言實(shí)踐中常見(jiàn)的試題及答案_第3頁(yè)
C語(yǔ)言實(shí)踐中常見(jiàn)的試題及答案_第4頁(yè)
C語(yǔ)言實(shí)踐中常見(jiàn)的試題及答案_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

C語(yǔ)言實(shí)踐中常見(jiàn)的試題及答案姓名:____________________

一、單項(xiàng)選擇題(每題2分,共10題)

1.以下關(guān)于C語(yǔ)言的數(shù)據(jù)類型說(shuō)法錯(cuò)誤的是:

A.整數(shù)類型分為有符號(hào)和無(wú)符號(hào)兩種

B.浮點(diǎn)數(shù)類型包括float和double兩種

C.字符類型只能存儲(chǔ)單個(gè)字符

D.數(shù)組類型不能作為函數(shù)的返回類型

2.以下關(guān)于C語(yǔ)言運(yùn)算符的說(shuō)法錯(cuò)誤的是:

A.賦值運(yùn)算符“=”的優(yōu)先級(jí)最低

B.關(guān)系運(yùn)算符的優(yōu)先級(jí)高于邏輯運(yùn)算符

C.按位運(yùn)算符的優(yōu)先級(jí)高于算術(shù)運(yùn)算符

D.逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低

3.以下關(guān)于C語(yǔ)言函數(shù)的說(shuō)法錯(cuò)誤的是:

A.函數(shù)定義中的參數(shù)默認(rèn)為傳值調(diào)用

B.函數(shù)返回類型為void時(shí),函數(shù)沒(méi)有返回值

C.函數(shù)可以嵌套定義

D.函數(shù)調(diào)用時(shí),參數(shù)的個(gè)數(shù)和類型必須與函數(shù)定義一致

4.以下關(guān)于C語(yǔ)言指針的說(shuō)法錯(cuò)誤的是:

A.指針是一種數(shù)據(jù)類型,可以存儲(chǔ)變量的地址

B.通過(guò)指針訪問(wèn)變量可以節(jié)省內(nèi)存空間

C.指針可以指向函數(shù)

D.指針變量的值可以改變

5.以下關(guān)于C語(yǔ)言結(jié)構(gòu)體的說(shuō)法錯(cuò)誤的是:

A.結(jié)構(gòu)體是一種自定義的數(shù)據(jù)類型,可以包含多個(gè)不同數(shù)據(jù)類型的成員

B.結(jié)構(gòu)體可以嵌套定義

C.結(jié)構(gòu)體變量可以作為函數(shù)的參數(shù)

D.結(jié)構(gòu)體不能作為函數(shù)的返回類型

6.以下關(guān)于C語(yǔ)言文件的說(shuō)法錯(cuò)誤的是:

A.文件在計(jì)算機(jī)中是以流的形式進(jìn)行處理的

B.文件可以存儲(chǔ)數(shù)據(jù),也可以存儲(chǔ)程序

C.文件在C語(yǔ)言中分為二進(jìn)制文件和文本文件

D.文件操作必須先打開(kāi)文件,然后才能進(jìn)行讀寫(xiě)操作

7.以下關(guān)于C語(yǔ)言預(yù)編譯處理的說(shuō)法錯(cuò)誤的是:

A.預(yù)編譯處理是在編譯之前進(jìn)行的

B.預(yù)編譯處理可以包含宏定義、文件包含、條件編譯等功能

C.預(yù)編譯處理是編譯器自動(dòng)完成的

D.預(yù)編譯處理可以修改源代碼中的代碼

8.以下關(guān)于C語(yǔ)言動(dòng)態(tài)內(nèi)存分配的說(shuō)法錯(cuò)誤的是:

A.動(dòng)態(tài)內(nèi)存分配使用malloc、calloc、realloc函數(shù)實(shí)現(xiàn)

B.動(dòng)態(tài)內(nèi)存分配可以在運(yùn)行時(shí)進(jìn)行

C.動(dòng)態(tài)內(nèi)存分配需要手動(dòng)釋放內(nèi)存

D.動(dòng)態(tài)內(nèi)存分配可以節(jié)省內(nèi)存空間

9.以下關(guān)于C語(yǔ)言異常處理的說(shuō)法錯(cuò)誤的是:

A.C語(yǔ)言中沒(méi)有異常處理機(jī)制

B.C語(yǔ)言可以使用goto語(yǔ)句實(shí)現(xiàn)異常處理

C.C語(yǔ)言可以使用try-catch語(yǔ)句實(shí)現(xiàn)異常處理

D.C語(yǔ)言可以使用setjmp和longjmp函數(shù)實(shí)現(xiàn)異常處理

10.以下關(guān)于C語(yǔ)言多線程的說(shuō)法錯(cuò)誤的是:

A.C語(yǔ)言標(biāo)準(zhǔn)庫(kù)中沒(méi)有直接支持多線程編程的函數(shù)

B.C語(yǔ)言可以使用pthread庫(kù)實(shí)現(xiàn)多線程編程

C.多線程編程可以提高程序的性能

D.多線程編程會(huì)降低程序的性能

二、多項(xiàng)選擇題(每題3分,共10題)

1.以下哪些是C語(yǔ)言中的基本數(shù)據(jù)類型?

A.int

B.char

C.float

D.double

E.struct

2.以下哪些運(yùn)算符用于進(jìn)行位運(yùn)算?

A.&(按位與)

B.|(按位或)

C.^(按位異或)

D.<<(左移)

E.>>(右移)

3.以下哪些是C語(yǔ)言中常用的輸入輸出函數(shù)?

A.printf

B.scanf

C.getchar

D.putchar

E.fprintf

4.以下哪些是C語(yǔ)言中定義函數(shù)時(shí)可能使用的修飾符?

A.static

B.extern

C.const

D.volatile

E.inline

5.以下哪些是C語(yǔ)言中定義結(jié)構(gòu)體時(shí)可能使用的特性?

A.指針成員

B.函數(shù)成員

C.位域

D.枚舉類型成員

E.聯(lián)合類型成員

6.以下哪些是C語(yǔ)言中文件操作的基本步驟?

A.打開(kāi)文件

B.讀寫(xiě)文件

C.關(guān)閉文件

D.刪除文件

E.復(fù)制文件

7.以下哪些是C語(yǔ)言中預(yù)編譯處理指令?

A.#define

B.#include

C.#ifdef

D.#ifndef

E.#else

8.以下哪些是C語(yǔ)言中動(dòng)態(tài)內(nèi)存分配函數(shù)?

A.malloc

B.calloc

C.realloc

D.free

E.new

9.以下哪些是C語(yǔ)言中處理字符串的函數(shù)?

A.strlen

B.strcpy

C.strcat

D.strcmp

E.sscanf

10.以下哪些是C語(yǔ)言中用于多線程編程的pthread庫(kù)函數(shù)?

A.pthread_create

B.pthread_join

C.pthread_mutex_lock

D.pthread_mutex_unlock

E.pthread_cond_wait

三、判斷題(每題2分,共10題)

1.在C語(yǔ)言中,整型變量int在內(nèi)存中的占用是固定不變的。()

2.C語(yǔ)言中,所有的數(shù)據(jù)類型最終都是以二進(jìn)制形式存儲(chǔ)在內(nèi)存中的。()

3.在C語(yǔ)言中,使用指針時(shí),可以通過(guò)解引用操作符*來(lái)訪問(wèn)指針?biāo)赶虻膬?nèi)存地址。()

4.在C語(yǔ)言中,結(jié)構(gòu)體中的成員默認(rèn)是公共的(public)。()

5.在C語(yǔ)言中,函數(shù)參數(shù)默認(rèn)情況下是按值傳遞的,即傳遞的是參數(shù)的副本。()

6.C語(yǔ)言中的文件流操作既可以用于文本文件,也可以用于二進(jìn)制文件。()

7.C語(yǔ)言中的宏定義指令#define只能在編譯預(yù)處理階段使用。()

8.在C語(yǔ)言中,使用malloc函數(shù)分配的內(nèi)存,如果不使用free函數(shù)釋放,程序運(yùn)行時(shí)會(huì)出錯(cuò)。()

9.在C語(yǔ)言中,一個(gè)函數(shù)可以調(diào)用另一個(gè)函數(shù),但不能調(diào)用自己。()

10.在C語(yǔ)言中,全局變量的作用域是整個(gè)程序,無(wú)論它們定義在哪個(gè)文件中。()

四、簡(jiǎn)答題(每題5分,共6題)

1.簡(jiǎn)述C語(yǔ)言中變量的作用域和生存期的概念,并舉例說(shuō)明。

2.解釋C語(yǔ)言中指針的概念,并說(shuō)明指針與數(shù)組的關(guān)系。

3.簡(jiǎn)述C語(yǔ)言中結(jié)構(gòu)體和聯(lián)合體的區(qū)別。

4.描述C語(yǔ)言中文件操作的步驟,并說(shuō)明如何實(shí)現(xiàn)文件的讀寫(xiě)操作。

5.解釋C語(yǔ)言中宏定義與函數(shù)調(diào)用的區(qū)別。

6.簡(jiǎn)述C語(yǔ)言中動(dòng)態(tài)內(nèi)存分配的基本原理和常用函數(shù)。

試卷答案如下

一、單項(xiàng)選擇題答案及解析思路

1.D.數(shù)組類型不能作為函數(shù)的返回類型。數(shù)組類型不能直接作為函數(shù)的返回類型,但可以通過(guò)指針來(lái)實(shí)現(xiàn)。

2.C.按位運(yùn)算符的優(yōu)先級(jí)高于算術(shù)運(yùn)算符。按位運(yùn)算符的優(yōu)先級(jí)最高,其次是算術(shù)運(yùn)算符,然后是關(guān)系運(yùn)算符,最后是邏輯運(yùn)算符和賦值運(yùn)算符。

3.C.結(jié)構(gòu)體可以嵌套定義。結(jié)構(gòu)體可以包含其他結(jié)構(gòu)體作為成員,實(shí)現(xiàn)嵌套定義。

4.D.指針變量的值可以改變。指針變量存儲(chǔ)的是內(nèi)存地址,可以通過(guò)賦值操作改變其指向的地址。

5.E.結(jié)構(gòu)體不能作為函數(shù)的返回類型。結(jié)構(gòu)體類型不能直接作為函數(shù)的返回類型,但可以通過(guò)指針來(lái)實(shí)現(xiàn)。

6.D.文件操作必須先打開(kāi)文件,然后才能進(jìn)行讀寫(xiě)操作。文件操作前必須打開(kāi)文件,操作完成后關(guān)閉文件。

7.D.預(yù)編譯處理可以修改源代碼中的代碼。預(yù)編譯處理指令如#define、#include等可以修改源代碼中的內(nèi)容。

8.D.動(dòng)態(tài)內(nèi)存分配可以節(jié)省內(nèi)存空間。動(dòng)態(tài)內(nèi)存分配可以根據(jù)需要分配內(nèi)存,避免靜態(tài)分配時(shí)內(nèi)存浪費(fèi)。

9.A.C語(yǔ)言中沒(méi)有異常處理機(jī)制。C語(yǔ)言標(biāo)準(zhǔn)庫(kù)中沒(méi)有提供異常處理機(jī)制,但可以使用其他方法模擬異常處理。

10.A.C語(yǔ)言標(biāo)準(zhǔn)庫(kù)中沒(méi)有直接支持多線程編程的函數(shù)。C語(yǔ)言標(biāo)準(zhǔn)庫(kù)中不直接支持多線程編程,但可以使用pthread庫(kù)實(shí)現(xiàn)。

二、多項(xiàng)選擇題答案及解析思路

1.A,B,C,D.int,char,float,double是C語(yǔ)言中的基本數(shù)據(jù)類型。

2.A,B,C,D,E.&(按位與),|(按位或),^(按位異或),<<(左移),>>(右移)是位運(yùn)算符。

3.A,B,C,D,E.printf,scanf,getchar,putchar,fprintf是C語(yǔ)言中常用的輸入輸出函數(shù)。

4.A,B,C,D,E.static,extern,const,volatile,inline是定義函數(shù)時(shí)可能使用的修飾符。

5.A,B,C,D,E.指針成員,函數(shù)成員,位域,枚舉類型成員,聯(lián)合類型成員是定義結(jié)構(gòu)體時(shí)可能使用的特性。

6.A,B,C,D,E.打開(kāi)文件,讀寫(xiě)文件,關(guān)閉文件,刪除文件,復(fù)制文件是文件操作的基本步驟。

7.A,B,C,D,E.#define,#include,#ifdef,#ifndef,#else是預(yù)編譯處理指令。

8.A,B,C,D.malloc,calloc,realloc,free是動(dòng)態(tài)內(nèi)存分配函數(shù)。

9.A,B,C,D,E.strlen,strcpy,strcat,strcmp,sscanf是處理字符串的函數(shù)。

10.A,B,C,D,E.pthread_create,pthread_join,pthread_mutex_lock,pthread_mutex_unlock,pthread_cond_wait是多線程編程的pthread庫(kù)函數(shù)。

三、判斷題答案及解析思路

1.×。整型變量int在內(nèi)存中的占用是固定的,但不同平臺(tái)可能不同。

2.√。所有的數(shù)據(jù)類型最終都是以二進(jìn)制形式存儲(chǔ)在內(nèi)存中的。

3.√。指針可以通過(guò)解引用操作符*來(lái)訪問(wèn)指針?biāo)赶虻膬?nèi)存地址。

4.×。結(jié)構(gòu)體中的成員默認(rèn)是私有的(private),除非顯式聲明為public。

5.√。函數(shù)參數(shù)默認(rèn)情況下是按值傳遞的,即傳遞的是參數(shù)的副本。

6.√。文件流操作既可以用于文本文件,也可以用于二進(jìn)制文件。

7.√。宏定義指令#define只能在編譯預(yù)處理階段使用。

8.×。使用malloc函數(shù)分配的內(nèi)存,如果不使用free函數(shù)釋放,程序運(yùn)行時(shí)不會(huì)出錯(cuò),但可能導(dǎo)致內(nèi)存泄漏。

9.×。一個(gè)函數(shù)可以調(diào)用另一個(gè)函數(shù),也可以調(diào)用自己,這稱為遞歸。

10.√。全局變量的作用域是整個(gè)程序,無(wú)論它們定義在哪個(gè)文件中。

四、簡(jiǎn)答題答案及解析思路

1.變量的作用域是指變量在程序中可以訪問(wèn)的范圍,生存期是指變量在內(nèi)存中存在的時(shí)間。作用域分為局部作用域和全局作用域,生存期分為自動(dòng)存儲(chǔ)期和靜態(tài)存儲(chǔ)期。

2.指針是一種數(shù)據(jù)類型,可以存儲(chǔ)變量的地址。指針與數(shù)組的關(guān)系是,數(shù)組名可以作為指向數(shù)組首元素的指針使用。

3.結(jié)構(gòu)體和聯(lián)合體的區(qū)別在于,結(jié)構(gòu)體中的成員各自占用獨(dú)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論