第一部分 數(shù)據(jù)結(jié)構(gòu)和算法
1. 假設(shè)執(zhí)行語(yǔ)句S的時(shí)間為O(1),則執(zhí)行下列程序短的時(shí)間為()
for(i=1;i<=n;i++) for(j=I;j<=n;j++) S;
A. O(n) B. O(n2) C. O(n*i) D. O(n+1)
2. 二位數(shù)組A[10…20,5…10]采用行序?yàn)橹餍蚍绞酱鎯?chǔ),每個(gè)數(shù)據(jù)元素占4個(gè)存儲(chǔ)單元,且A[10][5]的存儲(chǔ)地址是1000,則A[18][9]的地址是()
A. 1208 B. 1212 C. 1368 D. 1364
3. 設(shè)棧最大長(zhǎng)度為3,入棧序列為1,2,3,4,5,6,則不可能得出棧序列是()
A. 1,2,3,4,5,6 B. 2,1,3,4,5,6 C. 3,4,2,1,5,6 D. 4,3,2,1,5,6
4. 設(shè)有98個(gè)已排序列元素,采用二分法查找時(shí),最大比較次數(shù)是()
A. 49 B. 15 C. 20 D. 7
5. Hash表示用于數(shù)據(jù)存儲(chǔ)的一種有效的數(shù)據(jù)結(jié)構(gòu),Hash表等查找復(fù)雜度依賴于Hash值算法的有效性,在最好的情況下,Hash表的查找復(fù)雜度為()
A. O(1) B. O(logn) C. O(n) D. O(nlogn)
第二部分 軟件工程
1. 軟件能力成熟度模型CMM共分為()成熟度等級(jí)
A. 3 B. 4 C. 5 D. 6
2. 按照是否了解軟件的內(nèi)部構(gòu)造,可以將測(cè)試分為黑盒測(cè)試和白盒測(cè)試?紤]以下算法的PDL語(yǔ)句,如果要對(duì)其進(jìn)行完全路徑覆蓋的白盒測(cè)試,則需要()條路徑。
do ehile records remain read record; if record field 1 = 0 then process record; store in buffer; increment counter; elseif record field 2 = 0 then reset counter; else process record; store in file; endif endif enddo
A. 4 B. 5 C. 6 D. 7
3. 按照瀑布模型的階段劃分,軟件測(cè)試可以分為單元測(cè)試,集成測(cè)試,系統(tǒng)測(cè)試。請(qǐng)問(wèn)以下那項(xiàng)測(cè)試不屬于系統(tǒng)測(cè)試的內(nèi)容()
A. 壓力測(cè)試 B. 接口測(cè)試 C. 功能測(cè)試 D. 安全測(cè)試 E. 性能測(cè)試
4. 測(cè)試用例的設(shè)計(jì)是測(cè)試的重要階段。系統(tǒng)測(cè)試用例設(shè)計(jì)應(yīng)該從什么時(shí)候開(kāi)始()
A. 需求完成 B. 詳細(xì)設(shè)計(jì)完成 C. 編碼完成 D. 系統(tǒng)集成完畢,提交系統(tǒng)測(cè)試
5. 在UML方法中,使用多種類型的圖形來(lái)幫助進(jìn)行設(shè)計(jì),請(qǐng)問(wèn)一下那些圖形不是UML的圖形類型()
A. 類圖 B. 實(shí)體關(guān)系圖 C. 序列圖 D. 活動(dòng)圖
第三部分 Java語(yǔ)言及其他
1. 下面哪個(gè)是short型的取值范圍:()
A. -27--- 27-1 B. 0 --- 216-1 C. -215--- 215-1 D. -231---231-1
2. 下面哪項(xiàng)是不合法的標(biāo)識(shí)符:()
A. $persons B. TwoUsers C. *point D. _endline
3. 設(shè) float x = 1,y = 2,z = 3,則表達(dá)式 y+=z--/++x 的值是()
A. 3.5 B. 3 C. 4 D. 5
4. 下列哪些關(guān)鍵字即能夠被用于局部變量的修飾,也可以用做類變量的修飾()
A. public B. transient C. static D. finally
5. 以下的語(yǔ)句構(gòu)造了幾個(gè)JAVA對(duì)象?() String S = new String(“aaa”);
A. 1 B. 2 C. 3
6. 下面的哪些敘述為真()
A. equals()方法判定引用值是否指向同一對(duì)象 B. = = 操作符判定兩個(gè)不同的對(duì)象的內(nèi)容和類型是否一致 C. equal() 方法只有在兩個(gè)對(duì)象的內(nèi)容一致時(shí)返回ture D. 類File重寫(xiě)方法equals()在兩個(gè)不同的對(duì)象的內(nèi)容和類型一致時(shí)返回ture
7. 如果一個(gè)對(duì)象僅僅聲明實(shí)現(xiàn)了cloneable接口,但是不聲明clone方法,外部能夠調(diào)用其clone方法嗎?()
A. 能 B. 不能 C. 不確定
8. 考慮在C/S結(jié)構(gòu)下,服務(wù)器接受并處理請(qǐng)求,那么關(guān)于服務(wù)器處理請(qǐng)求的模式,哪些描述是錯(cuò)誤的()
A. 單線程模式下,服務(wù)器使用一個(gè)線程順序的處理所有的請(qǐng)求,可能導(dǎo)致阻塞
B. 服務(wù)器可以為每一個(gè)請(qǐng)求創(chuàng)建一個(gè)線程來(lái)處理該請(qǐng)求,這樣做比單線程模式更加穩(wěn)定
C. 線程池模式下,當(dāng)線程使用達(dá)到最大數(shù)量限制之后,線程池中沒(méi)用可用線程的時(shí)候,服務(wù)器將阻塞或者拒絕某個(gè)請(qǐng)求的處理
9. 使用Swing做界面的時(shí)候,如果把一個(gè)JButton放在一個(gè)JFrame中,在JFrame改變時(shí)只影響JButton的高度而寬度不受影響,應(yīng)該使用哪個(gè)布局管理器?()
A. FlowLayout B. CardLayout C. North and South of BorderLayout D. East and West of BorderLayout E. GridLayout
10. 以下的那個(gè)狀態(tài)是EntityBean所具有,而StatelessBean不具有的()
A. 池態(tài) B. 就緒態(tài) C. 不存在態(tài) D. 鈍化態(tài)
11. 以下關(guān)于數(shù)據(jù)庫(kù)范式的描述,哪些是錯(cuò)誤的()
A. 如果把多個(gè)數(shù)據(jù)項(xiàng)用一個(gè)大的String表示為一個(gè)字段,則不滿足第一范式
B. 滿足數(shù)據(jù)庫(kù)范式使得數(shù)據(jù)庫(kù)的效率更高
C. 如果滿足更高的范式,則必須首先滿足低級(jí)別的范式
D. 數(shù)據(jù)庫(kù)第二范式要求把表中與所有鍵沒(méi)有直接關(guān)系的數(shù)據(jù)全部拆分到其他表中
12. ?慮一下需求:包括學(xué)生、課程和教師的信息。其中學(xué)生的信息包括學(xué)生姓名、年齡地址等;課程信息包括課程號(hào)、課程名、課程學(xué)分等;教師信息包括教師的姓名、教師的地址等。一個(gè)學(xué)生可以選修多門(mén)課,而每門(mén)課也能有多個(gè)學(xué)生選修;一位教師可以教多門(mén)課,每門(mén)課也可以由多個(gè)教師講授。請(qǐng)問(wèn)如果使用關(guān)系數(shù)據(jù)庫(kù),并且達(dá)到第二范式的要求,需要設(shè)計(jì)()張表
A. 3 B. 4 C. 5 D. 6
13. 為了加快數(shù)據(jù)庫(kù)查找的速度,需要對(duì)數(shù)據(jù)表添加索引,請(qǐng)問(wèn)以下關(guān)于索引的描述,哪些是錯(cuò)誤的()
A. 聚類索引中,表中行的物理次序與索引鍵值的邏輯順序相同 B. 使用索引會(huì)使得數(shù)據(jù)更新的效率降低 C. 在大多數(shù)數(shù)據(jù)庫(kù)系統(tǒng)中,每張表只能夠有一個(gè)聚類索引 D. 考慮這個(gè)SQL語(yǔ)句:Select S.name,S.age from Student S where S.address=”成都”,如果我們對(duì)表Student建一個(gè)復(fù)合索引(age,address),可以改善上述查詢的效率。
第四部分 問(wèn)答題
1. 簡(jiǎn)述一個(gè)Linux驅(qū)動(dòng)程序的主要流程與功能。
2. 請(qǐng)列舉一個(gè)軟件中時(shí)間換空間或者空間換時(shí)間的例子。
3. 簡(jiǎn)述進(jìn)程與線程的區(qū)別。
4. static有什么用途?(請(qǐng)至少說(shuō)明兩種)
5. 頭文件中的ifndef/define/endif做什么用?
6. 請(qǐng)問(wèn)一下程序?qū)⑤敵鍪裁唇Y(jié)果? char *RetMenory(void) { char p[] = “hellow world”; return p; } void Test(void) { char *str = NULL; str = RetMemory(); printf(str); }
7. 引用與指針有什么區(qū)別?
8. 描述實(shí)時(shí)系統(tǒng)的基本特性
9. 全局變量和局部變量在內(nèi)存中是否有區(qū)別?如果有,是什么區(qū)別?
10. 什么是平衡二叉樹(shù)?
11. 堆棧溢出一般是由什么原因?qū)е碌?
12. 什么函數(shù)不能聲明為虛函數(shù)?
13. 冒泡排序算法的時(shí)間復(fù)雜度是什么?
14. #include 和 #include “filename.h” 有什么區(qū)別?
15. 寫(xiě)出float x 與“零值”比較的if語(yǔ)句。
16. 操作系統(tǒng)中進(jìn)程調(diào)度策略有哪幾種?
17. Internet采用哪種網(wǎng)絡(luò)協(xié)議?該協(xié)議的主要層次結(jié)構(gòu)?
18. Internet物理地址和IP地址轉(zhuǎn)換采用什么協(xié)議?
19. IP地址的編碼分為哪倆部分