引導語:筆試是面試程序員的必過一關,以下是本站小編分享給大家的C語言筆試題及答案,歡迎測試!更多精彩內容請持續關注我們應屆畢業生考試網!
一、選擇題(1)~(10)每小題2分, (11)~(50)每小題1分,共60分)
下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確的選項塗寫在答題卡相應位置上,答在試卷上不得分。
(1)在數據結構中,從邏輯上可以把數據結構分為_______。
A)動態結構和靜態結構 B)緊湊結構和非緊湊結構
C)線性結構和非線性結構 D)內部結構和外部結構
答案:C
評析:邏輯結構反映數據元素之間的邏輯關係,線性結構表示數據元素之間一對一的關係,非線性結構表示數據元素之間一對多或多對一的關係。
(2)若進棧序列為l,2,3,4,進棧過程中可以出棧,則下列不可能的一個出棧序列是_______。
A)1,4,3,2 B)2,3,4,l
C)3,1,4,2 D)3,4, 2,1
答案:C
評析:棧是一種後進先出表,選項c中,先出棧的是3,説明此時棧內必然有1,2,由於l先於2進棧,所以l不可能在2之前出棧,故選項C這種出棧序列是不可能的。
(3)排序方法中,將整個無序序列分割成若干小的子序列並分別進行插入排序的方法,稱為_______。
A)希爾排序 B)冒泡排序 C)插入排序 D)選擇排序
答案:A
評析:希爾排序法的基本思想是:將整個無序序列分割成若干小的子序列分別進行插入排序。
(4)在順序表(3,6,8,10,12,15,16,18,21,25,30)中,用二分法查找關鍵碼值11,所需的關鍵碼比較次數為_______。
A)2 B)3 C)4 D)5
答案:C
評析:二分法查找是用關鍵碼與線性表的中間元素比較,然後根據比較結果來判斷是結束查找,還是在左邊或者右邊子表按相同的方法繼續查找。本題中,與ll比較的關鍵碼分別為15,8,10,12四個。
(5)對於n個結點的單向鏈表(無表頭結點),需要指針單元的個數至少為_______。
A)n-1 B)n C)n+l D)2n
答案:C
評析:在n個結點的單向鏈表(無表頭結點)中,每個結點都有一個指針單元(即指針域),加上頭指針,至少需要n+1個指針單元。
(6)在軟件開發過程中,軟件結構設計是描述_______。
A)數據存儲結構 B)軟件體系結構 C)軟件結構測試 D)軟件控制過程
答案:B
評析:從工程管理角度來看,軟件設計分兩步完成:概要設計和詳細設計。概要設計(又稱結構設計)將軟件需求轉化為軟件體系結構、確定系統級接口、全局數據結構或數據庫模式。
(7)模塊本身的內聚是模塊獨立性的重要性度量因素之一。在7類內聚中,具有最強內聚 的一類是_______。
A)順序性內聚 B)過程性內聚 C)邏輯性內聚 D)功能性內聚
答案:D
評析:內聚性是一個模塊內部各元素間彼此結合的緊密程度的度量。內聚共有7類,它們之間的內聚性由弱到強排列順序為:偶然內聚、邏輯內聚、時間內聚、過程內聚、通信內聚、順序內聚和功能內聚。
(8)數據存儲和數據流都是_______,僅僅是所處的狀態不同。
A)分析結果 B)事件 C)動作 D)數據
答案:D
評析:數據流圖有4種成分:源點或終點、處理、數據存儲和數據流。數據存儲是處於靜止狀態的數據,數據流是處於運動中的數據。
(9)數據的完整性是指數據的正確性、有效性和_______。
A)可維護性 B)獨立性 C)安全性 D)相容性
答案:D
評析:數據模型的完整性規則是給定的數據模型中數據及其聯繫所具有的制約和依存規則,用以限定符合數據模型的數據庫狀態及其狀態的變化,以保證數據的正確性、有效性和相容性。
(10)關係代數運算是以_______為基礎的運算。
A)關係運算 B)謂詞運算 C)集合運算 D)代數運算
答案:C
評析:關係代數運算是以關係代數作為運算對象的一組高級運算的集合。它的基本操作是並、交、差、笛卡爾積,另外還包垂直分割(投影)、水平分割(選擇)、關係的結合(連接)等。
(11)能將高級語言程序轉換成目標語言程序的是_______。
A)調試程序 B)解釋程序 C)編譯程序 D)編輯程序
答案:C
評析:用高級語言編寫的程序稱為“源程序”,而計算機只能識別和執行由0和l組成的二進制指令,所以高級語言必須先用一種稱為“編譯程序”的軟件,把源程序翻譯成二進制形式的“目標程序”。
(12) _______是構成c語言程序的基本單位。
A)函數 B)過程 C)子程序 D)子例程
答案:A
評析:c程序是由函數構成的。一個c源程序至少包含一個main函數,也可以包含一個main函數和若干個其他函數,因此,函數是c程序的基本單位。
(13)可以在C語言中用做用户標識符的是_______。
A)void B)as_b3 C)for D)2c
define _123 -abc Do
WORD If cas SIG
答案:B
評析:c語言規定,標識符只能由字母、數字和下劃線三種符號組成,而且第一個字符必須是字母或下劃線。另外還需要注意的是關鍵字不能作標識符。選項A中void,C中for都為關鍵字,D中2c以字母開頭。
(14)若有以下類型説明語句:
char w;int x;float y,z;
則表達式w*x+z-y的結果為________類型。
A)float B)char C)int D)double
答案:A
評析:在進行運算時,不同類型的數據參加運算,需要先將其轉換成同一類型的數據,然後再進行運算。轉換的順序由低到高為:char,short→int→unsigned→long→double→float,故結果為float型。
(15)main(()
{ float x=123A56;
printf(“%-5.2fn”,x);
}
以上程序輸出的結果是________。
A)123.4 B)123.5 C)123.45 D)123.46
答案:D
評析:f格式符,用來輸出實數,以小數形式輸出。“%”的含義是:輸出數據共佔m列,其中n位小數,如果輸出位數小於m。則右端補空格。如果總長度大於列數,則按實際情況四捨五入輸出。
(16)下面語句的輸出結果是________。
Printf(“%dn”,strlen(“t”