一、選擇題(每小題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.數(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_b
B.AaBc
C.f1一一b
D.一1
(15)若變量均已正確定義并賦值,以下合法的C語言賦值語句是( )。
A.X…Y5;
B.X=n%2.5;
C.X+n=i;
D.x=5=4+1:
(16)設(shè)有定義:
則a和b的值分別是( )。
A.87和6.0
B.876和543.0
C.87和543.0
D.76和543.0
(17)有以下定義語句,編譯時會出現(xiàn)編譯錯誤的是( )。
A.char a=’\x2d’;
B.char a=。\n。;
C.char a=…a;
D.char a=”aa”:
(18)當(dāng)變量c的值不為2、4、6時,值也為”真”的表達式是( )。
A.(c>=2&&c<=6)&&(c%2 1=1)
B.(c==2)l l(e==4)II(C==6)
C.(C>=2&&c<=6)&&!(c%2)-
D.(c>=2&&c<=6)I l(c!=3)I|(C!=5)
(19)有以下計算公式
若程序前面已在命令行中包含math.h文件,不能夠正確計算上述公式的程序段是( )。
(20)有以下程序:
程序執(zhí)行后的輸出結(jié)果是( )。
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é)點最多有一個前件,也最多有一個后件,所以8正確。所以有一個以上根結(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é)點多一個。所以選擇8。
(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賦給im型f1oat型變量b。
(17)D【解析】D選項中將字符串常量…aa賦給字符變量a是錯誤的。
(18)D【解析】邏輯或運算符中只要有一個運算量為真結(jié)果就是真,當(dāng)c>=2&&C&1t;=6條件不成立時c的值肯定不是2、3、4…5 6所以C!=3,與C!=5均成立。所以D選項的結(jié)果一定為真。
(19)C【解析】本題重點考查的知識點是:s叫()函數(shù)。s叫()函數(shù)的作用是計算平方根,要求輸出的參數(shù)x必須大于等于0。題目公式的要求是無論x大于等于0還是小于0,Y的值都為x絕對值的開方。選項c中調(diào)用了sqrt(x)函數(shù),而沒有判斷X的正負,則Y=m-(x)會出錯。
(20)A【勰析】y一一表示Y使用后再自減1。所以最后一次Y的值為0,條件不成立但仍要執(zhí)行自減操作,Y的值為一1,跳出循環(huán)。打印Y的值一1。