一、選擇題(每小題1分,共40分)
(1)下列敘述中正確的是( 。。
A.算法就是程序
B.設(shè)計算法時只需要考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計
C.設(shè)計算法時只需要考慮結(jié)果的可靠性
D.以上三種說法都不對
(2)下列敘述中正確的是( 。
A.有一個以上根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一定是非線性結(jié)構(gòu)
B.只有一個根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一定是線性結(jié)構(gòu)
C.循環(huán)鏈表是非線性結(jié)構(gòu)
D.雙向鏈表是非線性結(jié)構(gòu)
(3)下列關(guān)于二叉樹的敘述中,正確的是( 。。
A.葉子結(jié)點總是比度為2的結(jié)點少一個
B.葉子結(jié)點總是比度為2的結(jié)點多一個
C.葉子結(jié)點數(shù)是度為2的結(jié)點數(shù)的兩倍
D.度為2的結(jié)點數(shù)是度為1的結(jié)點數(shù)的兩倍
(4)軟件生命周期中的活動不包括( 。。
A.市場調(diào)研
B.需求分析
C.軟件測試
D.軟件維護
(5)某系統(tǒng)總體結(jié)構(gòu)圖如下圖所示:
該系統(tǒng)總體結(jié)構(gòu)圖的深度是( )。
A.7
B.6
C.3
D.2
(6)程序調(diào)試的任務(wù)是( )。
A.設(shè)計測試用例
B.驗證程序的正確性
C.發(fā)現(xiàn)程序中的錯誤
D.診斷和改正程序中的錯誤
(7)下列關(guān)于數(shù)據(jù)庫設(shè)計的敘述中,正確的是( 。
A.在需求分析階段建立數(shù)據(jù)字典
B.在概念設(shè)計階段建立數(shù)據(jù)字典
C.在邏輯設(shè)計階段建立數(shù)據(jù)字典
D.在物理設(shè)計階段建立數(shù)據(jù)字典
(8)數(shù)據(jù)庫系統(tǒng)的三級模式不包括( 。。
A.概念模式
B.內(nèi)模式
C.外模式
D.?dāng)?shù)據(jù)模式
(9)有三個關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是( 。
A.自然連接
B.交
C.投影
D.并
(10)下列選項中屬于面向?qū)ο笤O(shè)計方法主要特征的是( 。
A.繼承
B.自頂向下
C.模塊化
D.逐步求精
(11)以下敘述中錯誤的是( 。
A.算法正確的程序可以有零個輸入
B.算法正確的程序最終一定會結(jié)束
C.算法正確的程序可以有零個輸出
D.算法正確的程序?qū)τ谙嗤妮斎艘欢ㄓ邢嗤慕Y(jié)果
(12)以下敘述中正確的是( 。
A.C語句必須在一行內(nèi)寫完
B.C程序中的每一行只能寫一條語句
C.C語言程序中的注釋必須與語句寫在同一行
D.簡單C語句必須以分號結(jié)束.
(13)以下選項中關(guān)于C語言常量的敘述錯誤的是( 。。
A.經(jīng)常被使用的變量可以定義成常量
B.常量分為整型常量、實型常量、字符常量和字符串常量
C.常量可分為數(shù)值型常量和非數(shù)值型常量
D.所謂常量,是指在程序運行過程中,其值不能被改變的量
(14)以下選項中,不合法的c語言用戶標(biāo)識符是( 。
A.a(chǎn)_b
B.AaBc
C.a(chǎn) - - b
D._1
(15)若變量均已正確定義并賦值,以下合法的C語言賦值語句是( 。。
A.x=y==5;
B.x=n%2.5;
C.x+n=i;
D.x=5=4+1:
(16)設(shè)有定義:int a;float b;執(zhí)行scanf("%2d%f",&a,&B.;語句時,若從鍵盤輸入876 543.0<回車>則a和b的值分別是( 。。
A.87和6.0
B.876和543.0
C.87和543.0
D.76和543.0
(17)有以下定義語句,編譯時會出現(xiàn)編譯錯誤的是( )。
(18)當(dāng)變量c的值不為2、4、6時,值也為”真”的表達式是( 。
(19)有以下計算公式
(20)有以下程序:
程序執(zhí)行后的輸出結(jié)果是( 。
A.y=一1
B.y=0
C.y=1
D.while構(gòu)成無限循環(huán)
一、選擇題
(1)D 【解析】算法是指解題方案的準(zhǔn)確而完整的描述,算法不等于程序,也不等于計算方法,所以A錯誤。設(shè)計算法時不僅要考慮對數(shù)據(jù)對象的運算和操作,還要考慮算法的控制結(jié)構(gòu)。
(2)B 【解析】線性結(jié)構(gòu)應(yīng)滿足:有且只有一個根結(jié)點與每個結(jié)點最多有一個前件,也最多有一個后件,所以B正確。所以有一個以上根結(jié)點的數(shù)據(jù)結(jié)構(gòu)一定是非線性結(jié)構(gòu),所以A錯誤。循環(huán)鏈表和雙向鏈表都是線性結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu)。
(3)B 【解析】根據(jù)二叉樹的基本性質(zhì)3:在任意一棵二叉樹中,度為0的葉子結(jié)點總是比度為2的結(jié)點多一個。所以選擇B。
(4)A 【解析】軟件生命周期可以分為軟件定義、軟件開發(fā)與軟件運行維護三個階段。主要活動階段是:可行性研究與計劃階段、需求分析、軟件設(shè)計、軟件實現(xiàn)、軟件測試、運行和維護,所以選擇A。
(5)C 【解析】根據(jù)總體結(jié)構(gòu)圖可以看出該樹的深度為3,比如:XY系統(tǒng)--功能2--功能2.1,就是最深的度數(shù)的一個表現(xiàn)。
(6)D 【解析】程序調(diào)試的任務(wù)是診斷和改正程序中的錯誤。
(7)A 【解析】數(shù)據(jù)字典是在需求分析階段建立,在數(shù)據(jù)庫設(shè)計過程中不斷修改、充實和完善的。
(8)D 【解析】數(shù)據(jù)庫系統(tǒng)的三級模式是概念模式、外模式和內(nèi)模式,所以選擇D。
(9)A 【解析】自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進行比較的分量必須是相同的屬性組,并且在結(jié)果中把重復(fù)的屬性列去掉,所以根據(jù)T中元組可以判斷R和S做的是自然連接操作。
(10)A 【解析】面向?qū)ο蠡痉椒ǖ幕靖拍钣袑ο、類和實例、消息、繼承與多態(tài)性,所以選擇A。
(11)C 【解析】算法的特征:①有窮性。一個算法(對任何合法的輸入)在執(zhí)行有窮步后能夠結(jié)束,并且在有限的時間內(nèi)完成。②確定性。算法中的每一步都有確切的含義。③可行性。算法中的操作能夠用已經(jīng)實現(xiàn)的基本運算執(zhí)行有限次來實現(xiàn)。④輸入:一個算法有零個或者多個輸入,零個輸入就是算法本身確定了初始條件。⑤輸出:一個算法有一個或者多個輸出,以反映出數(shù)據(jù)加工的結(jié)果。所以C選項錯誤。
(12)D 【解析】c語句可以跨行來寫,但是必須以分號結(jié)束,所以A選項錯誤。C程序中的一行可以有多條語句,所以B選項錯誤。C語言中的注釋語句可以與原語句放在一行
也可以不放在一行,所以C選項錯誤。
(13)A 【解析】C語言中,常量是指在程序運行過程中其值不能被改變的量,變量是指運行過程中其值可以改變的量,二者不能混淆,所以A選項錯誤。
(14)C 【解析】C語言規(guī)定,變量命名必須符合標(biāo)識符的命名規(guī)則,C選項中包含了非法字符“-”,所以錯誤。標(biāo)識符由字母、數(shù)字或下劃線組成,且第一個字符必須是大小寫英文字母或者下劃線,而不能是數(shù)字。
(15)A 【解析】B選項中運算符“%”的前后必須為整數(shù),C選項中不能將變量賦給表達式x+n,D選項中不能將表達式4+1賦給常量5。
(16)A 【解析】在格式字符前加入一個整數(shù)可以指定輸入數(shù)據(jù)所占的寬度,所以賦值時會將87賦給int型變量a,把6.0賦給int型float型變量b。
(17)D 【解析】D選項中將字符串常量“aa”賦給字符變量a是錯誤的。
(18)D 【解析】邏輯或運算符中只要有一個運算量為真結(jié)果就是真,當(dāng)c>=2&& c<=6條件不成立時c的值肯定不是2、3、4、5、6,所以c!=3,與c!=5均成立。所以D選項的結(jié)果一定為真。
(19)C 【解析】本題重點考查的知識點是:sqrt()函數(shù)。sqrt()函數(shù)的作用是計算平方根,要求輸出的參數(shù)X必須大于等于0。題目公式的要求是無論X大于等于0還是小于0,y的值都為X絕對值的開方。選項C中調(diào)用了sqrt(x)函數(shù),而沒有判斷x的正負,則y=sqrt(x)會出錯。
(20)A 【解析】y--表示y使用后再自減1。所以最后一次y的值為0,條件不成立但仍要執(zhí)行自減操作,y的值為-1,跳出循環(huán)。打印v的值-1。