第六套 模擬題
(1)下列敘述中正確的是
A)線性表是線性結(jié)構(gòu)
B)棧與隊(duì)列是非線性結(jié)構(gòu)
C)線性鏈表是非線性結(jié)構(gòu)
D)二叉樹是線性結(jié)構(gòu)
(2)非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由p所指向),滿足
A)p->next==NULL
B)p==NULL
C)p->next=head
D)p=head
(3)已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為節(jié)省時(shí)間,應(yīng)采用的算法是
A)堆排序
B)直接插入排序
C)快速排序
D)直接選擇排序
(4)對(duì)建立良好的程序設(shè)計(jì)風(fēng)格,下面描述正確的是
A)程序應(yīng)簡單、清晰、可讀性好
B)符號(hào)名的命名只要符合語法
C)充分考慮程序的執(zhí)行效率
D)程序的注釋可有可無
(5)下列不屬于結(jié)構(gòu)化分析的常用工具的是
A)數(shù)據(jù)流圖
B)數(shù)據(jù)字典
C)判定樹
D)PAD圖
(6)在軟件生產(chǎn)過程中,需求信息的給出是
A)程序員
B)項(xiàng)目管理者
C)軟件分析設(shè)計(jì)人員
D)軟件用戶
(7)下列工具中為需求分析常用工具的是
A)PAD
B)PFD
C)N-S
D)DFD
(8)NULL是指
A)0
B)空格
C)未知的值或無任何值
D)空字符串
(9)數(shù)據(jù)庫的故障恢復(fù)一般是由
A)數(shù)據(jù)流圖完成的
B)數(shù)據(jù)字典完成的
C)DBA完成的
D)PAD圖完成的
(10)下列說法中,不屬于數(shù)據(jù)模型所描述的內(nèi)容的是
A)數(shù)據(jù)結(jié)構(gòu)
B)數(shù)據(jù)操作
C)數(shù)據(jù)查詢
D)數(shù)據(jù)約束
(11)冒泡排序算法在的情況下的元素交換次數(shù)為 【1】 。
(12)在最壞情況下,堆排序需要比較的次數(shù)為 【2】 。
(13)若串s="MathTypes",則其子串的數(shù)目是 【3】 。
(14)軟件開發(fā)環(huán)境是全面支持軟件開發(fā)全過程的 【4】 集合。
(15)關(guān)系數(shù)據(jù)庫的關(guān)系演算語言是以 【5】 為基礎(chǔ)的DML語言。
試題解析
1.解析: 線性表是一種線性結(jié)構(gòu),數(shù)據(jù)元素在線性表中的位置只取決于它們自己的序號(hào),即數(shù)據(jù)元素之間的相對(duì)位置是線性的;棧、隊(duì)列、線性鏈表實(shí)際上也是線性表,故也是線性結(jié)構(gòu);樹是一種簡單的非線性結(jié)構(gòu)。
2.解析: 循環(huán)鏈表就是將鏈表的最后一個(gè)結(jié)點(diǎn)指向鏈表頭結(jié)點(diǎn)(或第一個(gè)結(jié)點(diǎn)),即p->next=head。
3.解析: 當(dāng)數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),說明數(shù)據(jù)表A按關(guān)鍵字值基本有序,在待排序序列基本有序的情況下,采用插入排序所用時(shí)間最少,故答案為選項(xiàng)B)。
4.解析: 程序設(shè)計(jì)應(yīng)該簡單易懂,語句構(gòu)造應(yīng)該簡單直接,不應(yīng)該為提高效率而把語句復(fù)雜化。
5.解析: 結(jié)構(gòu)化分析的常用工具有數(shù)據(jù)流圖、數(shù)據(jù)字典、判定樹和判定表。而PAD圖是常見的過程設(shè)計(jì)工具中的圖形設(shè)計(jì)。
6.解析: 軟件需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。
7解析: 需求分析中的常用工具有PAD、PFD及N-S等,而DFD(數(shù)據(jù)流圖)為結(jié)構(gòu)化分析工具。
8解析: 此題屬于記憶性的題目,NULL是指未知的值或無任何值。
9.解析: 一旦數(shù)據(jù)庫中的數(shù)據(jù)遭受破壞,需要及時(shí)進(jìn)行恢復(fù),RDBMS一般都提供此種功能,并由DBA負(fù)責(zé)執(zhí)行故障恢復(fù)功能。
10.解析: 數(shù)據(jù)模型所描述的內(nèi)容有3個(gè)部分,它們是數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束。其中,數(shù)據(jù)模型中的數(shù)據(jù)結(jié)構(gòu)主要描述數(shù)據(jù)的類型、內(nèi)容、性質(zhì),以及數(shù)據(jù)庫的聯(lián)系等;數(shù)據(jù)操作主要是描述在相應(yīng)數(shù)據(jù)結(jié)構(gòu)上的操作類型與操作方式。
11.解析: 根據(jù)冒泡排序算法思想可知,若待排序的初始序列為“正序”序列,則只需進(jìn)行一趟排序,在排序過程中進(jìn)行n-1次關(guān)鍵字間的比較,且不移動(dòng)和交換記錄,這種情況是冒泡排序的情況,故冒泡排序算法在的情況下的元素交換次數(shù)為0。
12 .O(nlog2n)
13.解析: 串s中共有9個(gè)字符,由于串中字符各不相同,則其子串中有0個(gè)字符的1個(gè)(空串),1個(gè)字符的9個(gè),2個(gè)字符的8個(gè),3個(gè)字符的7個(gè),4個(gè)字符的6個(gè),5個(gè)字符的5個(gè),6個(gè)字符的4個(gè),7個(gè)字符的3個(gè),8個(gè)字符的2個(gè),9個(gè)字符的1個(gè),共有1+2+3+4+5+6+7+8+9+1=46。
14.軟件工具
15.解析: 關(guān)系數(shù)據(jù)庫中的關(guān)系演算包括元組關(guān)系演算和域關(guān)系演算。二者都是由原子公式組成的公式。而這些關(guān)系演算都是以數(shù)理邏輯中的謂詞演算為基礎(chǔ)的。
(1)下列敘述中正確的是
A)線性表是線性結(jié)構(gòu)
B)棧與隊(duì)列是非線性結(jié)構(gòu)
C)線性鏈表是非線性結(jié)構(gòu)
D)二叉樹是線性結(jié)構(gòu)
(2)非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由p所指向),滿足
A)p->next==NULL
B)p==NULL
C)p->next=head
D)p=head
(3)已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為節(jié)省時(shí)間,應(yīng)采用的算法是
A)堆排序
B)直接插入排序
C)快速排序
D)直接選擇排序
(4)對(duì)建立良好的程序設(shè)計(jì)風(fēng)格,下面描述正確的是
A)程序應(yīng)簡單、清晰、可讀性好
B)符號(hào)名的命名只要符合語法
C)充分考慮程序的執(zhí)行效率
D)程序的注釋可有可無
(5)下列不屬于結(jié)構(gòu)化分析的常用工具的是
A)數(shù)據(jù)流圖
B)數(shù)據(jù)字典
C)判定樹
D)PAD圖
(6)在軟件生產(chǎn)過程中,需求信息的給出是
A)程序員
B)項(xiàng)目管理者
C)軟件分析設(shè)計(jì)人員
D)軟件用戶
(7)下列工具中為需求分析常用工具的是
A)PAD
B)PFD
C)N-S
D)DFD
(8)NULL是指
A)0
B)空格
C)未知的值或無任何值
D)空字符串
(9)數(shù)據(jù)庫的故障恢復(fù)一般是由
A)數(shù)據(jù)流圖完成的
B)數(shù)據(jù)字典完成的
C)DBA完成的
D)PAD圖完成的
(10)下列說法中,不屬于數(shù)據(jù)模型所描述的內(nèi)容的是
A)數(shù)據(jù)結(jié)構(gòu)
B)數(shù)據(jù)操作
C)數(shù)據(jù)查詢
D)數(shù)據(jù)約束
(11)冒泡排序算法在的情況下的元素交換次數(shù)為 【1】 。
(12)在最壞情況下,堆排序需要比較的次數(shù)為 【2】 。
(13)若串s="MathTypes",則其子串的數(shù)目是 【3】 。
(14)軟件開發(fā)環(huán)境是全面支持軟件開發(fā)全過程的 【4】 集合。
(15)關(guān)系數(shù)據(jù)庫的關(guān)系演算語言是以 【5】 為基礎(chǔ)的DML語言。
試題解析
1.解析: 線性表是一種線性結(jié)構(gòu),數(shù)據(jù)元素在線性表中的位置只取決于它們自己的序號(hào),即數(shù)據(jù)元素之間的相對(duì)位置是線性的;棧、隊(duì)列、線性鏈表實(shí)際上也是線性表,故也是線性結(jié)構(gòu);樹是一種簡單的非線性結(jié)構(gòu)。
2.解析: 循環(huán)鏈表就是將鏈表的最后一個(gè)結(jié)點(diǎn)指向鏈表頭結(jié)點(diǎn)(或第一個(gè)結(jié)點(diǎn)),即p->next=head。
3.解析: 當(dāng)數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),說明數(shù)據(jù)表A按關(guān)鍵字值基本有序,在待排序序列基本有序的情況下,采用插入排序所用時(shí)間最少,故答案為選項(xiàng)B)。
4.解析: 程序設(shè)計(jì)應(yīng)該簡單易懂,語句構(gòu)造應(yīng)該簡單直接,不應(yīng)該為提高效率而把語句復(fù)雜化。
5.解析: 結(jié)構(gòu)化分析的常用工具有數(shù)據(jù)流圖、數(shù)據(jù)字典、判定樹和判定表。而PAD圖是常見的過程設(shè)計(jì)工具中的圖形設(shè)計(jì)。
6.解析: 軟件需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。
7解析: 需求分析中的常用工具有PAD、PFD及N-S等,而DFD(數(shù)據(jù)流圖)為結(jié)構(gòu)化分析工具。
8解析: 此題屬于記憶性的題目,NULL是指未知的值或無任何值。
9.解析: 一旦數(shù)據(jù)庫中的數(shù)據(jù)遭受破壞,需要及時(shí)進(jìn)行恢復(fù),RDBMS一般都提供此種功能,并由DBA負(fù)責(zé)執(zhí)行故障恢復(fù)功能。
10.解析: 數(shù)據(jù)模型所描述的內(nèi)容有3個(gè)部分,它們是數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束。其中,數(shù)據(jù)模型中的數(shù)據(jù)結(jié)構(gòu)主要描述數(shù)據(jù)的類型、內(nèi)容、性質(zhì),以及數(shù)據(jù)庫的聯(lián)系等;數(shù)據(jù)操作主要是描述在相應(yīng)數(shù)據(jù)結(jié)構(gòu)上的操作類型與操作方式。
11.解析: 根據(jù)冒泡排序算法思想可知,若待排序的初始序列為“正序”序列,則只需進(jìn)行一趟排序,在排序過程中進(jìn)行n-1次關(guān)鍵字間的比較,且不移動(dòng)和交換記錄,這種情況是冒泡排序的情況,故冒泡排序算法在的情況下的元素交換次數(shù)為0。
12 .O(nlog2n)
13.解析: 串s中共有9個(gè)字符,由于串中字符各不相同,則其子串中有0個(gè)字符的1個(gè)(空串),1個(gè)字符的9個(gè),2個(gè)字符的8個(gè),3個(gè)字符的7個(gè),4個(gè)字符的6個(gè),5個(gè)字符的5個(gè),6個(gè)字符的4個(gè),7個(gè)字符的3個(gè),8個(gè)字符的2個(gè),9個(gè)字符的1個(gè),共有1+2+3+4+5+6+7+8+9+1=46。
14.軟件工具
15.解析: 關(guān)系數(shù)據(jù)庫中的關(guān)系演算包括元組關(guān)系演算和域關(guān)系演算。二者都是由原子公式組成的公式。而這些關(guān)系演算都是以數(shù)理邏輯中的謂詞演算為基礎(chǔ)的。