軟件水平考試(中級(jí))軟件設(shè)計(jì)師下午(應(yīng)用技術(shù))試題模擬試卷40_第1頁(yè)
軟件水平考試(中級(jí))軟件設(shè)計(jì)師下午(應(yīng)用技術(shù))試題模擬試卷40_第2頁(yè)
軟件水平考試(中級(jí))軟件設(shè)計(jì)師下午(應(yīng)用技術(shù))試題模擬試卷40_第3頁(yè)
軟件水平考試(中級(jí))軟件設(shè)計(jì)師下午(應(yīng)用技術(shù))試題模擬試卷40_第4頁(yè)
軟件水平考試(中級(jí))軟件設(shè)計(jì)師下午(應(yīng)用技術(shù))試題模擬試卷40_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

軟件水平考試(中級(jí))軟件設(shè)計(jì)師下午

(應(yīng)用技術(shù))試題模擬試卷40

一、必答題(本題共16題,每題1.0分,共16分。)

閱讀以下某房屋租賃服務(wù)系統(tǒng)的技術(shù)說(shuō)明和數(shù)據(jù)流圖,根據(jù)要求回答問(wèn)題1?問(wèn)題

4。[說(shuō)明]某房屋租賃公司欲建立一個(gè)房屋租賃服務(wù)系統(tǒng),統(tǒng)一管理房主和租賃者

的信息,從而快速地提供租賃服務(wù)。該系統(tǒng)具有以下功能。(1)登記房主信息:對(duì)

于每名房主,系統(tǒng)需登汜其姓名、住址和聯(lián)系電話,系統(tǒng)還將為其分配一個(gè)唯一的

身份標(biāo)識(shí)(ID)和密碼,并將這些信息寫(xiě)入房主信息文件。(2)登記房屋信息:所有

在系統(tǒng)中登記的房屋都有一個(gè)唯一的識(shí)別號(hào)(對(duì)于新增加的房屋,系統(tǒng)會(huì)自動(dòng)為其

分配一個(gè)識(shí)別號(hào))。除此之外,還需登記該房屋的地址、房型(如平房、帶陽(yáng)臺(tái)的樓

房、獨(dú)立式住宅等)、最多能夠容納的房客數(shù)、租金及房屋狀態(tài)(待租賃、已出租)。

這些信息都保存在房屋信息文件中。一名房主可以在系統(tǒng)中登記多個(gè)待租賃的房

屋。(3)收取手續(xù)費(fèi):房主登記完房屋后,系統(tǒng)會(huì)生成一份費(fèi)用單,房主根據(jù)費(fèi)用

單交納相應(yīng)的費(fèi)用。(4)登記租賃者信息:所有想通過(guò)該系統(tǒng)租賃房屋的租賃者,

必須首先在系統(tǒng)中登記個(gè)人信息,租賃者信息包括姓名、現(xiàn)住址、電話號(hào)碼、出生

年月、性別,以及系統(tǒng)分配的唯一身份標(biāo)識(shí)(ID)和密碼。這些信息都保存在租賃者

信息文件中。(5)租賃房屋:已經(jīng)登記在系統(tǒng)中的租賃者,可以得到一份系統(tǒng)提供

的待租賃房屋列表。一旦租賃者從中找到合適的房屋,就可以提出看房請(qǐng)求。系統(tǒng)

將安排租賃者與房主見(jiàn)面的時(shí)間和地點(diǎn),并將見(jiàn)面信息(包含見(jiàn)面雙方的基本信息)

通知租賃者和房主。對(duì)于每次看房,系統(tǒng)會(huì)生成一條看房記錄并將其寫(xiě)入看房記錄

文件中.(6)變更房屋狀態(tài),當(dāng)租賃者與房主達(dá)成和房或退房協(xié)議后,房主向系統(tǒng)

提交變更房屋狀態(tài)的請(qǐng)求。系統(tǒng)將根據(jù)房主的請(qǐng)求,修改房屋信息文件。該房屋

租賃服務(wù)系統(tǒng)的頂層數(shù)據(jù)流圖如圖5/0所示,圖5-11是其第0層數(shù)據(jù)流圖。

房JB侑■_

房屋租黃

磨堡

■房安挎

■房支推?認(rèn)

看用房?"求

圖5/1某房屋租賃服務(wù)系統(tǒng)第0層數(shù)據(jù)流圖

1、請(qǐng)使用[說(shuō)明]中給出的詞匯,將該房屋租賃服務(wù)系統(tǒng)頂層數(shù)據(jù)流圖(見(jiàn)圖5-10)中

(1)?(4)空缺處的數(shù)據(jù)流補(bǔ)充完整。

標(biāo)準(zhǔn)答案:這是一道要求讀者掌握分層DFD父圖與子圖平衡原則和輸入榆出平衡

原則的綜合分析題.本題的解答思路如下-①仔細(xì)閱讀題干給出的[說(shuō)明]信息,

并注意到關(guān)鍵信息”收取手續(xù)費(fèi):房主登記完房屋后,系統(tǒng)會(huì)生成一份費(fèi)用單,房

主根據(jù)費(fèi)用單交納相應(yīng)的費(fèi)用''可知,在圖5-10中處理“房屋租賃服務(wù)系統(tǒng)”應(yīng)有一

個(gè)“費(fèi)用單”數(shù)據(jù)流輸出至外部實(shí)體“房主這一點(diǎn)也體現(xiàn)在圖5-11中,即處理“2

登記房屋信息”有一條“費(fèi)用單''數(shù)據(jù)流輸出至外部實(shí)體“房主”,因此圖5-10中⑴空

缺處的輸出數(shù)據(jù)流是“費(fèi)用單”。②由題干給出的關(guān)鍵信息“相賃房屋:已經(jīng)登記在

系統(tǒng)中的租賃者,可以得到一份系統(tǒng)提供的待租賃房屋列表……”,給合圖5-11中

處理“4查詢(xún)待租賃房屋信息”有一條“待租賃房屋列表”數(shù)據(jù)流輸出至外部實(shí)體“租賃

者”可知,在圖5-10中⑵空缺處的輸出數(shù)據(jù)流是“待租賃房屋列表”。③由題干給

出的關(guān)鍵信息“租賃房屋:已經(jīng)登記在系統(tǒng)中的租賃者……租賃者從中(即待租賃房

屋列表)找到合適的房屋,就可以提出看房請(qǐng)求。系統(tǒng)會(huì)……可知,在圖5-10中

應(yīng)有一條“看房請(qǐng)求”數(shù)據(jù)流從外部實(shí)體“租賃者”輸入到處理“房屋租賃服務(wù)系統(tǒng)”。

因此圖5-10中(3)空缺處的輸入數(shù)據(jù)流是“看房請(qǐng)求”。④由題干給出的關(guān)鍵信息

“變更房屋狀態(tài):當(dāng)租賃者與房主達(dá)成租房或退房協(xié)議后,房主向系統(tǒng)提交變更房

屋狀態(tài)的請(qǐng)求。系統(tǒng)將……”可知,在圖5-10中應(yīng)有一條“變更房屋狀態(tài)請(qǐng)求”數(shù)據(jù)

流從外部實(shí)體“房主”輸入到處理“房屋租賃服務(wù)系統(tǒng)”。因此圖5-10中(4)空缺史的

輸入數(shù)據(jù)流是“變更房屋狀態(tài)請(qǐng)求”。

知識(shí)點(diǎn)解析:暫無(wú)解析

2、請(qǐng)使用[說(shuō)明]中給出的詞匯,將該房屋租賃服務(wù)系統(tǒng)第0層數(shù)據(jù)流圖(見(jiàn)圖5-11)

中的(5)?(8)空缺處的數(shù)據(jù)存儲(chǔ)補(bǔ)充完整。

標(biāo)準(zhǔn)答案:這是一道要求讀者掌握分層DFD局部數(shù)據(jù)存儲(chǔ)隱蔽性原則的綜合分析

題。本題的解答思路如下。①由于在圖5-11中(5)空缺處的數(shù)據(jù)存儲(chǔ)與處理“1登

記房主信息”相關(guān)聯(lián),因此應(yīng)重點(diǎn)閱讀題干說(shuō)明中“登記房主信息”相關(guān)的信息。由

題干紿出的關(guān)鍵信息'、登記房主信息:對(duì)于每名房主……并將這些信息寫(xiě)入房主信

息文件”可知,在圖5-11中處理“1登記房主信息”應(yīng)有一條“房主信息”數(shù)據(jù)流輸出

到數(shù)據(jù)存儲(chǔ)“房主信息文件”,即圖5-11中(5)空缺處的數(shù)據(jù)存儲(chǔ)是“房主信息文

件②由題干給出的關(guān)鍵信息“登記房屋信息:所有在系統(tǒng)中登記的房屋……這

些信息都保存在房屋信息文件中……”可知,在圖5-11中處理“2登記房屋信息”應(yīng)

有一條“房屋信息”數(shù)據(jù)流輸出到數(shù)據(jù)存儲(chǔ)“房屋信息文件”,因此圖5-11中(7)空缺

處的數(shù)據(jù)存儲(chǔ)是“房屋信息文件另外,在圖5-11中(7)空缺處的數(shù)據(jù)存儲(chǔ)也與處

理“6變更房屋狀態(tài)”相關(guān)聯(lián)。由題干給出的關(guān)鍵信息、”變更房屋狀態(tài):當(dāng)租賃者與

房主達(dá)成……系統(tǒng)將根據(jù)房主的請(qǐng)求,修改房屋信息文件”可知,在圖5-11中處理

“6變更房屋狀態(tài)”應(yīng)有一條“房屋變更信息”數(shù)據(jù)流輸出給數(shù)據(jù)存儲(chǔ)“房屋信息文

件③由題干給出的關(guān)鍵信息”登記租賃者信息」所有想通過(guò)該系統(tǒng)租賃房屋的

租賃者……這些信息都保存在租賃者信息文件中。”可知,處理“3登記租賃者信

息”應(yīng)有一個(gè)“租賃者信息”數(shù)據(jù)流輸出到數(shù)據(jù)存儲(chǔ)“租賃者信息文件”,因此圖5-11

中(6)空缺處的數(shù)據(jù)存儲(chǔ)是“租賃者信息文件”。④由題干給出的關(guān)鍵信息“租賃房

屋:已經(jīng)登記在系統(tǒng)中的租賃者……對(duì)于每次看房,系統(tǒng)會(huì)生成一條看房記錄并將

其寫(xiě)入看房記錄文件中”可知,處理“5安排租賃者看房”應(yīng)有一條“看房記錄”數(shù)據(jù)流

輸出到數(shù)據(jù)存儲(chǔ)“看房記錄文件”,因此圖5-11中⑻空缺處的數(shù)據(jù)存儲(chǔ)是“看房記錄

文件

知識(shí)點(diǎn)解析;暫無(wú)解析

3、請(qǐng)將以下與租賃者信息相關(guān)的數(shù)據(jù)字典條目補(bǔ)充完整。登錄信息二租賃者ID+

密碼注冊(cè)信息=(9)租賃者信息=(10)

標(biāo)準(zhǔn)答案:由題干給出的關(guān)鍵信息“登記租賃者信息:所有想……租賃者信息包括

姓名、現(xiàn)住址、電話號(hào)碼、出生年月、性別,以及系統(tǒng)分配的唯一身份標(biāo)識(shí)(ID)和

密碼”,結(jié)合試題中已給出的信息”登錄信息:租賃者ID+密碼”可知,該系統(tǒng)將“租

賃者信息”劃分為“登錄信息''和"注冊(cè)信息''兩部分,所以租賃者信息中除去登錄信

息就是注冊(cè)信息,將其表達(dá)成數(shù)據(jù)字典條目形式如下。注冊(cè)信息:姓名+現(xiàn)住址+電

話號(hào)碼+出生年月+性別租賃者信息=登錄信息+注冊(cè)信息

知識(shí)點(diǎn)解析:暫無(wú)解析

4、該房屋租賃服務(wù)系統(tǒng)第。層數(shù)據(jù)流圖(見(jiàn)圖5-11]中缺失了一些數(shù)據(jù)流,請(qǐng)指出

所缺失數(shù)據(jù)流的名稱(chēng)、起點(diǎn)和終點(diǎn)。

標(biāo)準(zhǔn)答案:這也是一道要求讀者掌握分層DFD父圖與子圖平衡原則和輸入/輸出平

衡原則的綜合分析題。本題的解答思路如下。①結(jié)合[問(wèn)題1]的分析結(jié)果可知,在

圖5-10中與外部實(shí)體“租賃者”相關(guān)的輸入/輸出數(shù)據(jù)共有5條(即租賃者信息、待租

賃房屋列表、看房請(qǐng)求、看房通知和查詢(xún)房屋請(qǐng)求),而在圖5-11中與外部實(shí)體

"租賃者''相關(guān)的輸入/輸出數(shù)據(jù)僅畫(huà)出了3條(即待租賃房屋列表、看房通知和查詢(xún)

房屋請(qǐng)求),缺少了“租賃者信息”和“看房請(qǐng)求''這兩條數(shù)據(jù)流。②由題干給出的關(guān)

鍵信息“登記租賃者信息:所有想通過(guò)該系統(tǒng)租賃房屋的租賃者,必須首先在系統(tǒng)

中登記個(gè)人信息……這些信息都保存在租賃者信息文件中”可知,在圖5-11中應(yīng)有

?條“租賃者信息”數(shù)據(jù)流從外部實(shí)體“租賃者”輸入到處理“3登記租賃者信息”,然

后再將租賃者的相關(guān)信息保存到數(shù)據(jù)存儲(chǔ)“租賃者信息文件''中。③由題干給出的

關(guān)鍵信息“租賃房屋:己經(jīng)登記……一旦租賃者從中找到合適的房屋,就可以提出

看房請(qǐng)求。系統(tǒng)會(huì)安排租賃者與房主見(jiàn)面的時(shí)間和地點(diǎn),并將見(jiàn)面信息(包含見(jiàn)面

雙方的基本信息)通知租賃者和房主。對(duì)于每次看房,系統(tǒng)會(huì)生成一條看房記錄并

將其寫(xiě)入看房記錄文件中“可知,在圖5-11中應(yīng)有一條“看房請(qǐng)求”數(shù)據(jù)流從外部實(shí)

體“租賃者”輸入到處理“5安排租賃者看房”,然后再將看房記錄保存到數(shù)據(jù)存儲(chǔ)“看

房記錄文件”中。同時(shí)注意到“將見(jiàn)面信息(包含見(jiàn)面雙方的基本信息)通知租賃者和

房主”這一關(guān)鍵信息,見(jiàn)面雙方的基本信息也被包含在“見(jiàn)面信息”中,安排見(jiàn)面時(shí)

需要查詢(xún)租賃者信息文件和房主信息文件以獲得雙方的基本信息,并將見(jiàn)面信息通

知雙方,因此在圖5-11中應(yīng)有一條“查詢(xún)租賃者信息”數(shù)據(jù)流從處理“5安排租賃者

看房”輸出到數(shù)據(jù)存儲(chǔ)“租賃者信息文件”;在圖5-11中還應(yīng)有一條“查詢(xún)房主信息”

數(shù)據(jù)流從處理“5安排租賃者看房”輸出到數(shù)據(jù)存儲(chǔ)“房主信息文件”。④同理,在圖

5-10中與外部實(shí)體“房主”相關(guān)的輸入/輸出數(shù)據(jù)共有6條,而在圖5-11中與外部實(shí)

體“房主”相關(guān)的輸入/輸出數(shù)據(jù)僅畫(huà)出了5條,即缺少了數(shù)據(jù)流“變更房屋狀態(tài)請(qǐng)

求⑤由題干給出的關(guān)鍵信息“變更房屋狀態(tài):當(dāng)租賃者與房主達(dá)成租房或退房

協(xié)議后,房主向系統(tǒng)提交變更房屋狀態(tài)的請(qǐng)求。系統(tǒng)將根據(jù)房主的請(qǐng)求,修改房屋

信息文件”可知,在圖5-11中應(yīng)有一條“變更房屋狀態(tài)請(qǐng)求”數(shù)據(jù)流從外部實(shí)體“房

主''輸入到處理“6變更房屋狀態(tài)”。

知識(shí)點(diǎn)解析:暫無(wú)解析

閱讀以下某工廠人事信息管理系統(tǒng)數(shù)據(jù)庫(kù)的設(shè)計(jì)說(shuō)明,根據(jù)要求回答問(wèn)題1?問(wèn)題

4。【說(shuō)明]某工廠有多個(gè)部門(mén),每個(gè)部門(mén)有多位職工,每位職工屬于并且僅屬于一

個(gè)部門(mén),每個(gè)部門(mén)有一位負(fù)責(zé)人,每個(gè)辦公室有一部電話。每位職工的月工資大致

是:800W月工資“500元。軟件開(kāi)發(fā)公司A為該工廠開(kāi)發(fā)的信息管理數(shù)據(jù)庫(kù)的部

分關(guān)系模式如下所示。職工(職工號(hào),姓名,年齡,月工資,部門(mén)號(hào),電話,辦公

室)部門(mén)(部門(mén)號(hào),部門(mén)名,負(fù)責(zé)人代碼,任職時(shí)間)其中“職工”和“部門(mén)”的關(guān)系示

例分另ij見(jiàn)表5-17和表5-18。

表5-17“職工”關(guān)系示例表

職工號(hào)姓名年齡月工資部門(mén)號(hào)電話辦公室

1001鄭俊華26100018001234主樓201

1002王平27110018001234主樓201

2001王曉華381300280012351號(hào)樓302

2002李力24800280012361號(hào)樓303

3001黎運(yùn)軍42130038001237主樓202

4001李源24800380012452號(hào)樓102

4002李興民361200480012462號(hào)樓103

5001趙欣250Null??????

???????????????????■?

表5-18“部門(mén)”關(guān)系示例表

部門(mén)號(hào)部門(mén)名負(fù)責(zé)人代碼任職時(shí)間

1人事處10022004-8-3

2機(jī)關(guān)20012004-8-3

3銷(xiāo)售科

4生產(chǎn)科40022003-6-1

5車(chē)間

5、請(qǐng)使用“關(guān)系模式標(biāo)記規(guī)則”(見(jiàn)本題附錄),給出上述各關(guān)系模式的主鍵和外

鍵。

標(biāo)準(zhǔn)答案:這是一道要求考生根據(jù)題目給定的關(guān)系模式,以及屬性間的函數(shù)依賴(lài)關(guān)

系和給定的關(guān)系實(shí)例來(lái)確定各關(guān)系模式主鍵和外鍵的綜合分析題。木試題的解答思

路如下。(1)由試題中給出的關(guān)鍵信息“某工廠有多個(gè)部門(mén),每個(gè)部門(mén)有多位職工,

每位職工屬于并且僅屬于一個(gè)部門(mén),每個(gè)部門(mén)有一位負(fù)責(zé)人.....每位職工的月工

資大致是:800W月工資“500元”,可以整理出如表5-24所示的關(guān)系模式主要屬

性、含義及約束。

表5-24主要屬性、含義及約束表

屬性含義及約束

職工號(hào)唯一標(biāo)識(shí)每個(gè)職工的編號(hào),每個(gè)職工屬于并且僅屬于一個(gè)部門(mén)

部門(mén)號(hào)唯一標(biāo)識(shí)每個(gè)部門(mén)的編號(hào),每個(gè)部門(mén)有一個(gè)負(fù)責(zé)人,且他也是一位職工

月工資500W月工資W5000元

(2)設(shè)K為R(U,F)中的屬性的組合,若且對(duì)于K的任何一個(gè)真子集K,,都

有K,不能決定U,則K為R的候選碼(候選關(guān)鍵字)。若有多個(gè)候選碼,則選一個(gè)

作為主碼(主鍵)。(3)部門(mén)關(guān)系模式的主鍵和外鍵。由題目中給出的關(guān)鍵信息“某工

廠有多個(gè)部門(mén),……每個(gè)部門(mén)有一位負(fù)責(zé)人“,并且結(jié)合試題所給出的“部門(mén)”關(guān)系

示例(見(jiàn)表5-18)可知,僅用“部門(mén)號(hào)”作為主鍵,可以唯一區(qū)分部門(mén)關(guān)系中的每一個(gè)

元組。同時(shí)考慮到部門(mén)負(fù)責(zé)人應(yīng)該來(lái)自職員,所以“負(fù)責(zé)人代碼”應(yīng)為部門(mén)關(guān)系模式

的外鍵。最后可得部門(mén)關(guān)系模式的主鍵和外鍵如下:部門(mén)(部門(mén)號(hào),部門(mén)名,

負(fù)貢人代碼,任職時(shí)間)(4)職工關(guān)系模式的主鍵和外鍵。由題干中給出的關(guān)鍵信息

“每位職工屬于并且僅屬于一個(gè)部門(mén)”可知,僅用"職工號(hào)''作為主鍵,可以唯一區(qū)分

職工關(guān)系中的每一個(gè)元組0同時(shí)考慮到“部門(mén)號(hào)”是部門(mén)關(guān)系模式的主犍,所以它應(yīng)

是職工關(guān)系模式的外鍵。最后可得職工關(guān)系模式的主鍵和外鍵如下:職工(職工

號(hào),姓名,年齡,月工資,部C1號(hào),電話,辦公室)。

知識(shí)點(diǎn)解析:暫無(wú)解析

6、對(duì)于表5-17和表5-18所示的“職工”和“部門(mén)”關(guān)系,請(qǐng)指出表5-19中第①、②

和③行是否允許插入?請(qǐng)分別用100字以?xún)?nèi)的文字簡(jiǎn)要說(shuō)明理由。

表5-19新噌“職工”關(guān)系示例表

行號(hào)職工號(hào)姓名年齡月工資部門(mén)號(hào)電話辦公室

①1001王新軍28100018001234主樓201

②2003李力281000

③5802趙曉嘯361500680015683號(hào)樓503

標(biāo)準(zhǔn)答案:這是一道要求考生掌握完整性定義的約束性的綜合分析題。本試題的解

答思路如下。(1)用SQL定義關(guān)系模式的一個(gè)非常重要的問(wèn)題是完整性控制。完整

性控制應(yīng)具有①定義功能、②檢測(cè)功能和③處理功能等3方面的功能。一旦發(fā)現(xiàn)

違背了完整性約束條件,則應(yīng)采取相關(guān)的動(dòng)作來(lái)保證數(shù)據(jù)的完整性。數(shù)據(jù)庫(kù)中最重

要的約束是聲明一個(gè)或一組屬性形成關(guān)系的鍵。鍵的約束在SQL的CREATE

TABLE命令中聲明。在關(guān)系系統(tǒng)中,最重要的完整性約束條件是:實(shí)體完整性和

參照完整性。(2)實(shí)體完整性定義。在關(guān)系中只能有一個(gè)主鍵。聲明主鍵有以下兩

種方法:①將PRIMARYKEY保留字加在屬性類(lèi)型之后;②在屬性列表中引入一

個(gè)新元素,該元素包含保留字PRIMARYKEY和用圓括號(hào)括起的,形成該鍵的屬

性或?qū)傩越M列表。(3)參照完整性定義。定義格式如下:

FOREIGNKEY(屬性名)REFERENCES表名(屬性名)

【ONDELETECASCADEISETNULL]參照完整性是通過(guò)使用保留字

“FOREIGNKEY”定義哪些列為外碼;REFERENCES用于指明外鍵對(duì)應(yīng)于哪個(gè)表

的主鍵:ONDELETECASCADE指明刪除被參照關(guān)系的元組時(shí),同時(shí)刪除參照關(guān)

系中的元組;SETNULL表示置為空值方式。(4)由于在職工表的定義中,職工號(hào)

主碼是唯一標(biāo)識(shí)每個(gè)元組(記錄)的,而在表5-19第①行中的職工號(hào)是“1001”,在

題目給出的表5-17“職工”關(guān)系示例表中已經(jīng)存在該職主號(hào)的記錄,為了保證實(shí)體的

完整性,該條記錄不能插入。(5)表5-19第②行的元組可以插入到表5-17“職工”關(guān)

系表中,盡管部門(mén)號(hào)、電話和辦公室為空,但是它表示該雇員暫時(shí)沒(méi)有分配到某個(gè)

部門(mén)。雖然職工表中部門(mén)號(hào)是外鍵,但在定義中也沒(méi)有約束它不能為空。(6)表5-

19第③行的元組不能插入到表5-17“職工”關(guān)系表中,部門(mén)號(hào)是外鍵,而在部門(mén)關(guān)

系中找不到部門(mén)號(hào)為“6”的元組,違反了參照完整性,所以不能做插入操作。

知識(shí)點(diǎn)解析:暫無(wú)解析

7、查詢(xún)每個(gè)部門(mén)中月工資最高的“職工號(hào)”的SQL查詢(xún)語(yǔ)句如下。

Select職工號(hào)from職工E

where月工資=(SelectMax(月工資)

fromWCasM

whereM.部門(mén)號(hào)=E.部門(mén)號(hào))(])請(qǐng)用30字以?xún)?nèi)文字簡(jiǎn)要說(shuō)明該查詢(xún)語(yǔ)句對(duì)查

詢(xún)效率的影響。(2)對(duì)該查詢(xún)語(yǔ)句進(jìn)行修改,使它既可以完成相同功能,乂可以提

高查詢(xún)效率。

標(biāo)準(zhǔn)答案:這是一道要求考生分析查詢(xún)效率的綜合分析題。通常在涉及相關(guān)查詢(xún)的

某些情形中,構(gòu)造臨時(shí)關(guān)系可以提高查詢(xún)效率。(1)試題中所給出的SQL查詢(xún)語(yǔ)

句,對(duì)于外層的職工關(guān)系E中的每一個(gè)元組,都要對(duì)內(nèi)層的整個(gè)職工關(guān)系M進(jìn)行

檢索,因此查詢(xún)效率不高。(2)對(duì)該查詢(xún)語(yǔ)句進(jìn)行修改,使它既可以完成相同功

能,乂可以提高查詢(xún)效率。解答思路①:改正后的SQL語(yǔ)句使用了臨時(shí)表。

SelectMax(月工資)as最高工資,部門(mén)號(hào)intcTernpfrom職T

Groupby部門(mén)號(hào)

Selecz號(hào)fromKX,Temp

where月工資=最高工資and職工.部門(mén)號(hào)=Tenp.部門(mén)號(hào)解答思路②:

Select職工號(hào)from職工,(SelectMax(月工資)as最高匚資,部門(mén)號(hào)Groupby部門(mén)W)

asdepMax

where月工資-1ft高1-資and職工用門(mén)號(hào):depMax.部門(mén)號(hào)

知識(shí)點(diǎn)解析:暫無(wú)解析

8、假定分別在“職工”關(guān)系中的“年齡”和“月工資”字段上創(chuàng)建了索引,如下的Select

查詢(xún)語(yǔ)句可能不會(huì)促使查詢(xún)優(yōu)化器使用索引,從而降低查詢(xún)效率,請(qǐng)寫(xiě)出既可以完

成相同功能又可以提高查詢(xún)效率的SQL語(yǔ)句。

Select姓名,年齡,月工資from職工

where年齡>45or月工資<100Ci

標(biāo)準(zhǔn)答案:本試題所給出的原Select查詢(xún)語(yǔ)句中使用了條件or,系統(tǒng)在查詢(xún)的時(shí)候

將對(duì)全表進(jìn)行掃描,不會(huì)促使查詢(xún)優(yōu)化器使用索引,從而降低了查詢(xún)效率。既可

以完成相同功能乂可以提高查詢(xún)效率的SQL語(yǔ)句修改如下。

Select姓名,年齡,月工資from職工

where年齡>45;

union

Select姓名,年齡,月工資frocr.職工

where年齡月工費(fèi)(1000:

知識(shí)點(diǎn)解析:暫無(wú)解析

9、該數(shù)據(jù)庫(kù)系統(tǒng)在設(shè)計(jì)時(shí),采用了異構(gòu)數(shù)據(jù)庫(kù)技術(shù)。請(qǐng)給出目前3種通用的異構(gòu)

數(shù)據(jù)庫(kù)查詢(xún)技術(shù)。[附]關(guān)系模式的標(biāo)記規(guī)則如下關(guān)系名(屬性名1,屬性名

2,屬性名n)其中:①若該屬性?xún)H為主鍵屬性時(shí),則該屬性名下畫(huà)實(shí)下畫(huà)

線;②若該屬性?xún)H為外鍵屬性時(shí),則該屬性名下畫(huà)虛下畫(huà)線;③若該屬性既是主

鍵屬性,又是外鍵屬性時(shí),則在該屬性名下畫(huà)實(shí)下畫(huà)線和虛下畫(huà)線;④若該屬性

既不是主鍵屬性,乂不是外鍵屬性時(shí),則在該屬性名下不做標(biāo)記。

標(biāo)準(zhǔn)答案:這是一道要求考生掌握異構(gòu)數(shù)據(jù)庫(kù)的基本概念題。本題所涉及的知識(shí)點(diǎn)

如下。異構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)是相關(guān)的多個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的集合,可以實(shí)現(xiàn)數(shù)據(jù)的共享和

透明訪問(wèn),每個(gè)數(shù)據(jù)庫(kù)系統(tǒng)在加入異構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)之前本身就已經(jīng)存在,擁有各自

的DMBS。異構(gòu)數(shù)據(jù)庫(kù)的各個(gè)組成部分具有自身的自治性,實(shí)現(xiàn)數(shù)據(jù)共享的同

時(shí),每個(gè)數(shù)據(jù)庫(kù)系統(tǒng)仍保有各自的應(yīng)用特性、完整性控制和安全性控制。目前通用

的異構(gòu)數(shù)據(jù)庫(kù)查詢(xún)技術(shù)包括公共數(shù)據(jù)庫(kù)網(wǎng)關(guān)技術(shù)、公共協(xié)議技術(shù)和公共編程接口技

術(shù)。

知識(shí)點(diǎn)解析:暫無(wú)解析

閱讀以下UML類(lèi)圖及其說(shuō)明,根據(jù)要求回答問(wèn)題I?問(wèn)題4。[說(shuō)明]某客戶(hù)信息

管理系統(tǒng)中保存著兩類(lèi)客戶(hù)的信息:①個(gè)人客戶(hù)。對(duì)于這類(lèi)客戶(hù),系統(tǒng)保存了其

客戶(hù)標(biāo)識(shí)(由系統(tǒng)生成)和基本信息(包括姓名、住宅電話和E-mail)。②集團(tuán)客戶(hù)。

集團(tuán)客戶(hù)可以創(chuàng)建和管理自己的若干名聯(lián)系人。對(duì)于這類(lèi)客戶(hù),系統(tǒng)除了保存其客

戶(hù)標(biāo)識(shí)(由系統(tǒng)生成)之外,也保存了其聯(lián)系人的信息。聯(lián)系人的信息包括姓名、住

宅電話、E-mail、辦公電話以及職位。該系統(tǒng)除了可以保存客戶(hù)信息之外,還具有

以下功能:①向系統(tǒng)中添加客戶(hù)(addCustomer);②根據(jù)給定的客戶(hù)標(biāo)識(shí)在系統(tǒng)中

查找該客戶(hù)(getCustomer);③根據(jù)給定的客戶(hù)標(biāo)識(shí)從系統(tǒng)中刪除該客戶(hù)

(removeCustomer);④創(chuàng)建新的聯(lián)系人(addContactj;⑤在系統(tǒng)中查找指定的聯(lián)系

人(getContact);⑥從系統(tǒng)中刪除指定的聯(lián)系人(removcContact)。該系統(tǒng)采用面向

對(duì)象方法進(jìn)行開(kāi)發(fā)。在面向?qū)ο蠓治鲭A段,根據(jù)上述描述,得到如表5-20所示的

類(lèi)。

表6-20客戶(hù)信息管理系統(tǒng)類(lèi)表

類(lèi)名說(shuō)明

CustomerlnformationSystem客戶(hù)信息管理系統(tǒng)

IndividualCustomer個(gè)人客戶(hù)

InstitutionalCustomer集團(tuán)客戶(hù)

Contact聯(lián)系人

眄述該置戶(hù)信息管理系統(tǒng)的UML類(lèi)圖如圖5-12所示。

ICustoaerlnforBHtionSysteaI

----------3rp-----------

|Custceer"|

[IM£v,dua!Cu$toaor]|InttitutionalCustcwr|

(5)1Hi

'---尸]

[叫:――」

圖542客戶(hù)信息管理系統(tǒng)的UML類(lèi)圖

10、根據(jù)上述描述,圖5-12中類(lèi)Cuslomer的屬性是(1);類(lèi)Person的屬性是(2)。

(1)A.客戶(hù)標(biāo)識(shí)B.姓名、住宅電話、E-mailC.客戶(hù)標(biāo)識(shí)、辦公電話、職位

D.姓名、住宅電戶(hù)、辦公電話、E-mail、職位⑵A.客戶(hù)標(biāo)識(shí)B.姓名、住

宅電話、E-mailC.客戶(hù)標(biāo)識(shí)、辦公電話、職位D.姓名、住宅電戶(hù)、辦

公電話、E-mail>職位

標(biāo)準(zhǔn)答案:由試題關(guān)鍵信息”……對(duì)于這類(lèi)客戶(hù)(個(gè)人客戶(hù)),系統(tǒng)保存了其客戶(hù)標(biāo)

識(shí)……對(duì)于這類(lèi)客戶(hù)(集團(tuán)客戶(hù)),系統(tǒng)保存了其客戶(hù)標(biāo)識(shí)……”可知,“客戶(hù)標(biāo)識(shí)”是

個(gè)人客戶(hù)和集團(tuán)客戶(hù)的共同屬性,囚此該標(biāo)識(shí)也必然是類(lèi)“客戶(hù)”的一個(gè)屬性。據(jù)此

可先排除(1)空缺處的選項(xiàng)B和選項(xiàng)D。而選項(xiàng)C的“辦公電話、職位”是類(lèi)

InstitutionalCustomer(集團(tuán)客戶(hù))的屬性,如果它們也是類(lèi)“客戶(hù)”的屬性,那么類(lèi)

Individualcustomer(個(gè)人客戶(hù))也必然繼承這兩個(gè)屬性,而試題中對(duì)于類(lèi)“個(gè)人客戶(hù)”

無(wú)此相關(guān)描述,可見(jiàn)選項(xiàng)C不是正確答案。因此依據(jù)試題的描述,類(lèi)Customer(客

戶(hù))的屬性只有“客戶(hù)標(biāo)識(shí)”。因此(1)空缺處的正確答案是選項(xiàng)A。在UML類(lèi)圖

中,---->'表示其相連的兩個(gè)類(lèi)之間存在泛化關(guān)系,即在圖5-12中類(lèi)Person(人)

是類(lèi)Contact(聯(lián)系人)的基類(lèi);----表示其相連的兩個(gè)類(lèi)之間存在關(guān)聯(lián)關(guān)系,即

在圖5-12中類(lèi)Person與IndividualCuslomer(個(gè)人客戶(hù))之間具有關(guān)聯(lián)關(guān)系。由試題

關(guān)鍵信息“對(duì)于這類(lèi)客戶(hù)(個(gè)人客戶(hù)),系統(tǒng)保存了其客戶(hù)標(biāo)識(shí)和基本信息(包拈姓

名、住宅電話和E-mail)”,以及對(duì)⑴空缺處解析中類(lèi)“個(gè)人客戶(hù)”繼承了類(lèi)“客戶(hù)”的

“客戶(hù)標(biāo)識(shí)”屬性,可見(jiàn)類(lèi)“個(gè)人客戶(hù)”還有“姓名、住宅電話和E?mail”屬性沒(méi)有體

現(xiàn),在圖5-12中這些屬性應(yīng)該從類(lèi)Person(人)中進(jìn)行關(guān)聯(lián)。從試題關(guān)鍵信息“聯(lián)系

人的信息包括姓名、住宅電話、E-mail.辦公電話和職位”可知,類(lèi)Contact(聯(lián)系

人)除了從類(lèi)"人''中繼承了“姓名、住宅電話和E-mail”屬性之外,還追加了“辦公電

話、職位”屬性。這一點(diǎn)分析也證明了類(lèi)Person(人)具有“姓名、住宅電話和E-mail”

的屬性。因此⑵空缺處的正確答案是選項(xiàng)B。

知識(shí)點(diǎn)解析:暫無(wú)解析

11、識(shí)別關(guān)聯(lián)的多重度是面向?qū)ο蠼_^(guò)程中的一個(gè)重要步驟。根據(jù)說(shuō)明中給出的

描述,請(qǐng)將圖5-12中⑶?(8)空缺處的內(nèi)容填寫(xiě)完整。

標(biāo)準(zhǔn)答案:關(guān)聯(lián)表示了對(duì)象間的結(jié)構(gòu)關(guān)系,它暗示兩個(gè)類(lèi)在概念上位于相同的級(jí)

別。在UML類(lèi)圖中,符號(hào),-A表示其相連的兩個(gè)類(lèi)之間存在關(guān)聯(lián)關(guān)系。識(shí)別

關(guān)聯(lián)的多重度是面向?qū)ο蠼_^(guò)程中的一個(gè)重要步驟。即說(shuō)明一個(gè)關(guān)聯(lián)的實(shí)例中有

多少個(gè)相互連接的對(duì)象是很重要的。其中,這個(gè)“多少”被稱(chēng)為關(guān)聯(lián)角色的多重度,

把它寫(xiě)成一個(gè)表示取值范圍的表達(dá)式或?qū)懗梢粋€(gè)具體值。指定關(guān)聯(lián)一端的多重

度,就是說(shuō)明在關(guān)聯(lián)另一端的類(lèi)的每個(gè)對(duì)象要求在本端的類(lèi)必須有多少個(gè)對(duì)象。由

題干給出的關(guān)鍵信息“集團(tuán)客戶(hù)可以創(chuàng)建和管理自己的若干名聯(lián)系人”可知,類(lèi)

InstitutionalCustomer(集團(tuán)客戶(hù))和類(lèi)Contact(聯(lián)系人)之間存在著一對(duì)多(l:m)的聯(lián)

系。根據(jù)圖5-12類(lèi)圖中給出的關(guān)聯(lián)導(dǎo)航,(7)空缺處應(yīng)填入(8)空缺處應(yīng)填入

“1…叱。客戶(hù)管理系統(tǒng)中必然包含若干個(gè)需要管理的客戶(hù)信息,即類(lèi)

CustomcrInfonnationSysicm(客戶(hù)信息管理系統(tǒng))與類(lèi)Customer(客戶(hù))之間存在著一

對(duì)多(l:m)的聯(lián)系。根據(jù)圖5-12類(lèi)圖中給出的關(guān)聯(lián)導(dǎo)航,(3)空缺處應(yīng)填入“1”,(4)

空缺處應(yīng)填入“0...*”。根據(jù)[問(wèn)題1]的解析可知,類(lèi)Person(人)的屬性有姓名、住

宅電話和E-mail,類(lèi)Customer(客戶(hù))的屬性是“客戶(hù)標(biāo)識(shí)類(lèi)

Individualcustomer(個(gè)人客戶(hù))從類(lèi)Customer只能繼承到屬性“客戶(hù)標(biāo)識(shí)”,其他的屬

性都要依靠與類(lèi)Person之間的關(guān)聯(lián)關(guān)系來(lái)獲取,即類(lèi)Person(人)、類(lèi)

Individualcustomer(個(gè)人客戶(hù))端的關(guān)聯(lián)多重度均為"I”。因此(5)空缺處應(yīng)填入“1”,

(6)空缺處應(yīng)填入“1”。

知識(shí)點(diǎn)解析?:暫無(wú)解析

12、根據(jù)說(shuō)明中的敘述,抽象出如表5-21所示的方法。

表5-21各方法名稱(chēng)及功能描述表

功能描述方法名

向系統(tǒng)中添加客戶(hù)addCustomer

根據(jù)給定的客戶(hù)標(biāo)識(shí),在系統(tǒng)中查找該客戶(hù)getCustomer

根據(jù)給定的客戶(hù)標(biāo)識(shí),從系統(tǒng)中刪除該客戶(hù)removeCustomei

創(chuàng)建新的聯(lián)系人addContact

在系統(tǒng)中查找指定的聯(lián)系人getContact

從系統(tǒng)中刪除指定的聯(lián)系人removeContact

請(qǐng)指出圖5-12中,類(lèi)CuslomerlnformationSystem應(yīng)具有的方法:(9);類(lèi)

InstitutionalCustomer應(yīng)具有的方法:(10)。

標(biāo)準(zhǔn)答案:類(lèi)CustomerlnformalionSyslem(客戶(hù)信息管理系統(tǒng))的作用是向用戶(hù)提供

與客戶(hù)管理相關(guān)的操作接口,所以addCustomer、getCustomer和removeCuslomer

是類(lèi)CustomerlnfomiationSystem(客戶(hù)信息管理系統(tǒng))的方法。由于聯(lián)系人是由集團(tuán)

客戶(hù)創(chuàng)建和管理的,按照面向?qū)ο蟮睦砟睿c聯(lián)系人相關(guān)的直接操作應(yīng)由類(lèi)

InslilutionalCustomer(集團(tuán)客戶(hù))來(lái)提供。因此addContact>getContact和

rcinovcContact是類(lèi)InstitutionalCustomer(集團(tuán)客戶(hù))的方法。

知識(shí)點(diǎn)解析:暫無(wú)解析

13、關(guān)聯(lián)(Association)和聚集(Aggregation)是UML中兩種非常重要的關(guān)系。請(qǐng)用

150字以?xún)?nèi)的文字簡(jiǎn)要說(shuō)明關(guān)聯(lián)和聚集的關(guān)系,并說(shuō)明其不同之處。

標(biāo)準(zhǔn)答案:在UML規(guī)范中,構(gòu)成關(guān)系可以使用關(guān)聯(lián)和聚集來(lái)表示。關(guān)聯(lián)

(Association)關(guān)系用于描述兩個(gè)概念上位于相同級(jí)別的類(lèi)的實(shí)例之間存在的某種語(yǔ)

義上的聯(lián)系。例如,售票員小張為某個(gè)長(zhǎng)途汽車(chē)站工作,1個(gè)汽車(chē)站有多輛長(zhǎng)途汽

車(chē),那么售票員小張與長(zhǎng)途汽車(chē)站、汽車(chē)站與汽車(chē)就存在著關(guān)聯(lián)關(guān)系。聚集

(Aggregation)關(guān)系是關(guān)聯(lián)關(guān)系的一種特例(即聚集是關(guān)聯(lián)的一種),它代表兩個(gè)類(lèi)之

間的整體和局部關(guān)系。例如,一臺(tái)電腦與鍵盤(pán)、鼠標(biāo)、顯示器之間就存在著聚集關(guān)

系。聚集暗示著整體在概念上處于比局部更高的一個(gè)級(jí)別,在實(shí)例圖中不存在回

路,即只能是一種單向關(guān)系;而關(guān)聯(lián)暗示兩個(gè)類(lèi)在概念上位于相同的級(jí)別。換言

之,聚集表示部分與整體關(guān)系的關(guān)聯(lián)。若從生命周期的角度考慮,則關(guān)聯(lián)對(duì)象的生

命周期一般無(wú)必然關(guān)系,聚集的整體對(duì)象往往對(duì)部分對(duì)象的生命周期負(fù)責(zé)。另

外,聚集和組裝也是UML中兩種非常重要的關(guān)系,它們都表示實(shí)例之間的整體/部

分關(guān)系。組裝(Composition)關(guān)系是聚集關(guān)系的一種特殊形式,它暗示“局部”在“整

體''內(nèi)部的生存期職責(zé)。例如,某電子商務(wù)公司與其銷(xiāo)售部、財(cái)務(wù)部之間就存在著

組裝關(guān)系。聚集是概念性的,只是區(qū)分整體與部分。組裝具有很強(qiáng)的歸屬關(guān)系,

而且整體與部分的對(duì)象生存周期是一致的。

知識(shí)點(diǎn)解析:暫無(wú)解析

閱讀以下標(biāo)準(zhǔn)書(shū)號(hào)校驗(yàn)碼的技術(shù)說(shuō)明和程序流程圖,根據(jù)要求回答問(wèn)題1至問(wèn)題

3。【說(shuō)明|為實(shí)現(xiàn)圖書(shū)的國(guó)際統(tǒng)一編碼,便于實(shí)現(xiàn)口算機(jī)化的圖書(shū)管理,每本正式

出版的圖書(shū)都印有國(guó)際標(biāo)準(zhǔn)書(shū)號(hào)。標(biāo)準(zhǔn)書(shū)號(hào)由“ISBN”、10個(gè)數(shù)字(0?9)組成,其

格式如下。ISBN組號(hào)-出版者號(hào)-書(shū)名號(hào)-校驗(yàn)碼其中,校驗(yàn)碼是根據(jù)前面9個(gè)數(shù)字

計(jì)算得到的,用于計(jì)算機(jī)自動(dòng)校驗(yàn)。假設(shè)標(biāo)準(zhǔn)書(shū)號(hào)的10個(gè)數(shù)字依次是a(l),

a(2)........a(10),則校驗(yàn)碼a(10)的設(shè)置應(yīng)使S=10*a(l)十/a(2)+8*a(3)+…+l*a門(mén)0)

能被11整除。如果校驗(yàn)碼a(10)應(yīng)設(shè)置成10,則規(guī)定以“X”表示之。例如,《軟件

設(shè)計(jì)師考試考前沖刺預(yù)測(cè)卷及考點(diǎn)解析》的標(biāo)準(zhǔn)書(shū)號(hào)為:ISBN7-121-05027-5。第

1段上的數(shù)字“7”是國(guó)際ISBN中心分配給中國(guó)ISBN中心管理的組號(hào);第2段上的

“121”表示電子工業(yè)出版社。標(biāo)準(zhǔn)書(shū)號(hào)的校驗(yàn)過(guò)程如圖5-13所示,計(jì)算校驗(yàn)碼的過(guò)

程如圖5?14所示。其中,Mod(S,11)表示S除以11得到的余數(shù)。

圖5?13標(biāo)準(zhǔn)書(shū)號(hào)的校驗(yàn)過(guò)程

圖5?14計(jì)算校驗(yàn)碼的過(guò)程

14、請(qǐng)根據(jù)標(biāo)準(zhǔn)書(shū)號(hào)校驗(yàn)碼的技術(shù)說(shuō)明,將圖5-13和圖5-14程序流程圖中⑴?(4)

空缺處的內(nèi)容填補(bǔ)完整。

標(biāo)準(zhǔn)答案:制訂標(biāo)準(zhǔn)書(shū)號(hào)的目的是實(shí)現(xiàn)圖書(shū)的國(guó)際統(tǒng)一編碼,以便于實(shí)現(xiàn)計(jì)算機(jī)化

的圖書(shū)管理,使出版社內(nèi)的圖書(shū)管理、書(shū)庫(kù)中的圖書(shū)管理以及書(shū)店的圖書(shū)銷(xiāo)售管理

具有更高的工作效率和管理水平。標(biāo)準(zhǔn)書(shū)號(hào)由“ISBN”、10個(gè)數(shù)字(0?9)組成,采

用“ISBN組號(hào)-出版者號(hào)-書(shū)名號(hào)-校驗(yàn)碼”的格式。其中,出版者號(hào)規(guī)定為2-7位數(shù)

字。對(duì)較大的出版社分配比較短的碼,留出較長(zhǎng)的書(shū)名號(hào)為較多的書(shū)進(jìn)行編碼。

標(biāo)準(zhǔn)書(shū)號(hào)的最后一位是校驗(yàn)碼。設(shè)置校驗(yàn)碼可以大大減少錄入錯(cuò)誤造成的管理混

亂。校驗(yàn)碼一般由計(jì)算機(jī)程序產(chǎn)生。當(dāng)操作人員錄入前伸個(gè)數(shù)字后,計(jì)算機(jī)就會(huì)自

動(dòng)啟動(dòng)計(jì)算校驗(yàn)碼的過(guò)程,輸出正確的校驗(yàn)碼。在書(shū)店(或書(shū)庫(kù)),不論是建庫(kù)還是

查詢(xún)檢索,在手工輸入帶校驗(yàn)碼的標(biāo)準(zhǔn)書(shū)號(hào)后,計(jì)算機(jī)就會(huì)自動(dòng)啟動(dòng)校驗(yàn)過(guò)程,判

斷是否輸入錯(cuò)誤。在圖5-14計(jì)算校驗(yàn)碼的過(guò)程中,首先要計(jì)算部分S值,即

S=10*a(1)+9*a(2)+8*a(3)+...+2*a(9)o此時(shí)需要使月循環(huán)處理。在循環(huán)開(kāi)始之前,

應(yīng)設(shè)置初始值S=0。在循環(huán)體內(nèi),應(yīng)執(zhí)行語(yǔ)句“S+=(11-I)*a⑴"或"S+=(l+I)*a(10-

I)”(注意,其中的乘號(hào)不要丟失)。該循環(huán)應(yīng)對(duì)循環(huán)變量1=1?9進(jìn)行(步長(zhǎng)默認(rèn)為

1)控制,因此,(2)空缺處應(yīng)填入“9”,(3)空缺處所填寫(xiě)的內(nèi)容是的

或“S+(l+I)*a(10-I)->S"。接著再計(jì)算該S值除以11的余數(shù)R。顯然

由于“校驗(yàn)碼a(10)的設(shè)置應(yīng)使S=10*a(l)+9*a(2)+8*a(3)+…+l*a(10)能被11整

除“,即余數(shù)R與校驗(yàn)碼之和應(yīng)能被II整除,因此校驗(yàn)碼應(yīng)等于MOD(1I-R,II),

即(4)空缺處所填寫(xiě)的內(nèi)容是“MOD(11-R,11)”。若讀者該空缺處填入“MOD(11-

R)“,則是沒(méi)有考慮R=0這一情況。當(dāng)校驗(yàn)碼等于10時(shí),還應(yīng)以符號(hào)X表示之。

在對(duì)標(biāo)準(zhǔn)書(shū)號(hào)的校驗(yàn)過(guò)程(圖5-13)中,首先要將校驗(yàn)碼為X的情況轉(zhuǎn)換成數(shù)據(jù)

10,以便于后續(xù)計(jì)算。為了計(jì)算S=10*a(l)+9*a(2)+8*a(3)+…+l*a(10),需要使用

循環(huán)處理。在循環(huán)開(kāi)始之前,應(yīng)0設(shè)置初始值S=0,對(duì)循環(huán)變量I從1到10(步長(zhǎng)

默認(rèn)為1)。在循環(huán)體內(nèi),應(yīng)執(zhí)行語(yǔ)句"S+=(U-I)*a(l)”或"S+=I*a(ll?I)”。因此(1)空

缺處所填寫(xiě)的內(nèi)容是⑴"或Ta(ll-I)”。在圖5/3中,計(jì)算出S值之后,

還應(yīng)判斷S除以11的余數(shù)是否為0。若余數(shù)為0,說(shuō)明S能夠被11整除,表示校

驗(yàn)結(jié)果正確;若余數(shù)非0,則說(shuō)明輸入的標(biāo)準(zhǔn)書(shū)號(hào)芍錯(cuò)(可能是校驗(yàn)碼輸入有錯(cuò),

也可能是前面的數(shù)字輸入有錯(cuò))。此時(shí)計(jì)算機(jī)應(yīng)輸出相應(yīng)的錯(cuò)誤提示信息“提醒信

息錄入人員仔細(xì)校對(duì)改正。

知識(shí)點(diǎn)解析:暫無(wú)解析

15、圖5-13(或圖5-14)中Mod(S,11)表示S除以11得到的余數(shù)。以下[C程序]實(shí)

ist'aflc'in-爸iMintp;'£nLd)數(shù)P和除數(shù)q之間的余數(shù)。C程序]

{intx=0;

while(x<=p)

{if(x==p)

return0;

(5)

)

return(6)

)

標(biāo)準(zhǔn)答案:不使用求余計(jì)算符號(hào)“%”,求取被除數(shù)p和除數(shù)q之間的余數(shù)的C程序

staticintfun-Mod(intp,intq)

{intx=0;

while(x<=p)

{if(x==p)

return0;

x?=q;

)

returnq-(x-p);

)

【C程序2】

intfun_Mod(intp,intq)

(while(pxj)

(if(x==p)

return0;

P-=Q;

)

returnp;

如下。[C程序I])

知識(shí)點(diǎn)解析:暫無(wú)解析

16、假設(shè)《應(yīng)試捷徑——典型考題解析與考點(diǎn)貫通.系統(tǒng)分析師考試》書(shū)籍標(biāo)準(zhǔn)書(shū)

號(hào)前9個(gè)數(shù)字為7-121-04715,請(qǐng)寫(xiě)出其對(duì)應(yīng)的校驗(yàn)碼。

標(biāo)準(zhǔn)答案:由題干說(shuō)明可知,校驗(yàn)碼可以是某個(gè)“0”?“9”的數(shù)字或者是符號(hào)“X”。

《軟件設(shè)計(jì)師考試考前沖刺預(yù)測(cè)卷及考點(diǎn)解析》的標(biāo)準(zhǔn)書(shū)號(hào)為:ISBN7-121-05027-

5o該標(biāo)準(zhǔn)書(shū)號(hào)的校驗(yàn)過(guò)程如下。

10x7+9x1+8x2+7x1+6x0+5x5+4x0+3x2+2x7+1x7154.八

-----------------------------------------------------------------------------------=-----=1t4…。

1111余數(shù)為

0,說(shuō)明輸入的標(biāo)準(zhǔn)書(shū)號(hào)正確。結(jié)合[問(wèn)題1]要點(diǎn)解析思路,若《應(yīng)試捷徑——典

型考題解析與考點(diǎn)貫通一系統(tǒng)分析師考試》書(shū)籍標(biāo)準(zhǔn)書(shū)號(hào)前9個(gè)數(shù)字為7-121-

04715,則其對(duì)應(yīng)的校驗(yàn)碼a(10)計(jì)算過(guò)程如卜.:

①S1=10xa(l)+9xa(2)+8xa(3)+7xa(4)+6xa(5)+5xa(6)4-4xa(7)+3xa(8)+2xa(9)

螞3

=10x7+9xl+8x2+7x1+6x0+5x4+4x7+3x1+2x5=163②由于11,因此

R=Mod(163,11)=9@a(10)=Mod(11-RJ1)=Mod(2,11)=2

知識(shí)點(diǎn)解析:暫無(wú)解析

二、選答題(本題共3題,每題分,共3分。)

17、閱讀以下算法說(shuō)明和C程序,根據(jù)要求回答問(wèn)題1至問(wèn)題2。[說(shuō)明][算法4-

1]的功能是:用來(lái)檢查文本文件中的圓括號(hào)是否匹配。若文件中存在圓括號(hào)沒(méi)有對(duì)

應(yīng)的左括號(hào)或者右括號(hào),則給出相應(yīng)的提示信息,如圖4-18所示。

文件■示■息

(1*2)

缺少對(duì)應(yīng)左括號(hào):第2行.男4列

獻(xiàn)少對(duì)應(yīng)左括號(hào)?第3行,第10列

(((h)

ijHk

(imn)就少對(duì)應(yīng)右括號(hào),第5行?笫4列?第4行?第1列

圖4J8系統(tǒng)提示信息在[算法4-1]中,stack

為一整數(shù)棧。算法中各函數(shù)的說(shuō)明如表4-16所示。

^4-16各函數(shù)的功能說(shuō)明表

函數(shù)名函數(shù)功能

push(inti)將整數(shù)i壓入棧stack中

pop()stack的棧頂元素出棧

empty()判斷stack棧是否為空.若為空,函數(shù)返回1,否則函數(shù)返回0

讀取文本文件中的下一個(gè)字符,并返回該字符的ASCII值,將字符所在的行號(hào)以及

nextch()字符在行中的位置分別存儲(chǔ)到變量row和col中,若遇到文件結(jié)束符,則將變量EOF

置為true

判斷字符ch是左括號(hào)還是右括號(hào),若是左括號(hào),函數(shù)返回1;若是右括號(hào),函數(shù)返

kind(charch)

回2;若兩者都不是,函數(shù)返回0

[算法4-1]將棧stack置空,置EOF為false

ch<-nextch()i

while(notEOF)

k*-kind<ch);

if(k=?=(1)){

push((2)

push((3));)

elseif(k■?(4))

if(notempty<)){

pop():

pop()?)

else(

眼示精誤信息(缺少對(duì)應(yīng)左括號(hào)或右括號(hào)):

顯示行號(hào)row:顯示列號(hào)cob)

endif

endif

ch<-nextch()t

endwhile

if(notempty())

顯示錯(cuò)誤信息(跳少對(duì)應(yīng)左括號(hào)或右括號(hào)為

while(notempty(?(

row<-pop()t

col<-pop():

顯示行號(hào)row,顯示列號(hào)col;)

endwhile

endif為了識(shí)別更多種類(lèi)的括號(hào),

對(duì)[算法4-1]加以改進(jìn)后得至IJ[算法4-2]。[算法4-2]能夠識(shí)別圓括號(hào)、方括號(hào)和花括

號(hào)(不同類(lèi)型的括號(hào)不能互相匹配)。改進(jìn)后,函數(shù)kind(charch)的參數(shù)及其對(duì)應(yīng)的

返回值如表4-17所示。

表4T7函數(shù)Kind(chaxch)的參數(shù)及其對(duì)應(yīng)的返回值

ch(){}[1其他

返回值1234560

[算法4.2]

將棧stack置空,置EOF為false

ch<-nextch():

while(notEOF){

k<-kind<ch)i

if(k>0)

if<

push((5))?

push((6))i

push((7))i)

elseif<andW件3){

pop():

popC)i

pop();)

else(

顯示幡誤信息(缺少對(duì)應(yīng)左括號(hào)或右括號(hào));

顯示行號(hào)row:顯示列號(hào)col:}

endif

endif

ch<-nextch()i}

endwhile

if(noten^pty())(

顯示錯(cuò)誤信息(缺少對(duì)應(yīng)左括號(hào)或右括號(hào)%

while(notempty()){

pop()|

row<-popOs

colv-pop();

顯示行號(hào)row:顯示列號(hào)co】i}}

endwhile

endif[問(wèn)題1]請(qǐng)將[算法4-

1]和[算法4-2]中,(1)?(7)空缺處的內(nèi)容補(bǔ)充完整。[問(wèn)題2]請(qǐng)從以下選項(xiàng)中選擇

相應(yīng)的判斷邏輯填補(bǔ)[算法4-2]中的“判斷條件1”至“判斷條件3"。注意,若“判斷條

件2”的邏輯判斷結(jié)果為假,就無(wú)需對(duì)“判斷條件3”進(jìn)行判斷。判斷條件1:(8)判

斷條件2:(9)判斷條件3:(10)[供選擇的答案]A.棧頂元素表示的是與當(dāng)前字符

匹配的左括號(hào)B.棧頂元素表示的是與當(dāng)前字符匹配的右括號(hào)C.字符是左括號(hào)

D.字符是右括號(hào)E.棧不空F.棧空G.字符是括號(hào)

標(biāo)準(zhǔn)答案:這是一道要求讀者用創(chuàng)建Thread類(lèi)的子類(lèi)的方法實(shí)現(xiàn)多線程的編程

題。本題的解答思路如下。通常把限定只能在一端進(jìn)行插入和刪除操作的線也表

稱(chēng)為棧,所以棧又稱(chēng)為運(yùn)算受限的線性表。把可以進(jìn)行插入和刪除操作的一端稱(chēng)為

棧頂(習(xí)慣用top指針指示),而另一端稱(chēng)之為棧底。當(dāng)棧中不包含任何數(shù)據(jù)元素

時(shí),這個(gè)棧就為空棧。由于棧具有“后進(jìn)先出”的運(yùn)算特點(diǎn),因此在程序設(shè)計(jì)中應(yīng)

用十分廣泛。例如,進(jìn)制轉(zhuǎn)換、括號(hào)匹配的檢驗(yàn)、表達(dá)式求值以及迷宮求解等。

[算法4-1]的功能是檢查文本文件中的圓括號(hào)是否匹配。若文件中存在圓括號(hào)沒(méi)有

對(duì)應(yīng)的左括號(hào)或者右括號(hào),則給出圖4-18所示的提示信息。從圖4-18所給出的信

息可知,程序不但要求檢查出是否有括號(hào)匹配錯(cuò)誤,而且還需給出具體錯(cuò)在哪個(gè)括

號(hào)。通常,括號(hào)匹配的規(guī)則是把最近的左右括號(hào)配成一對(duì),所以括號(hào)匹配最常用的

方法是遇到左括號(hào)則入棧,遇到右括號(hào)就出棧。這樣,出棧的左括號(hào)與當(dāng)前的右括

號(hào)是匹配的。[算法4-1]分析:①棧置空,置EOF為FALSE,并從文件中讀取第

一個(gè)字符到ch,然后進(jìn)入循環(huán)。循環(huán)體執(zhí)行一次處理一個(gè)ch。進(jìn)入循環(huán),利月

kind函數(shù)算出ch的類(lèi)型k。②雖然[算法4-1]中有(1)?(4)空缺處,但其基本結(jié)構(gòu)

卻很明顯,大致流程如下。當(dāng)k等于什么的時(shí)候把什么入棧;當(dāng)k等于什么的時(shí)

候且棧不為空的時(shí)候,進(jìn)行出棧操作。如果棧為空,則打印錯(cuò)誤信息;如果都不

是,則讀文件的下一個(gè)字符再次進(jìn)入循環(huán)。根據(jù)以上所提及的算法可知,入棧操

作應(yīng)該發(fā)生在類(lèi)型k為1(即ch為左括號(hào))時(shí),而出棧操作應(yīng)該發(fā)生在類(lèi)型k為2(即

ch為右括號(hào))時(shí)。因此⑴空缺處所填寫(xiě)的內(nèi)容是“1”,(4)空缺處所填寫(xiě)的內(nèi)容是

“2”。由于在(4)空缺處之后的出棧操作中,并沒(méi)有用到棧的內(nèi)容。因此可能有些讀

者理所當(dāng)然地認(rèn)為棧中的內(nèi)容沒(méi)有什么用,可以在(2)、(3)空缺處隨便壓個(gè)ch,即

兩個(gè)空缺處所填寫(xiě)“ch”。但換個(gè)角度思考,從邏輯上就可以推翻這種解答。如果

(2)、(3)空缺處壓的是同樣的數(shù)據(jù),又是在同一位置出棧,算法大可只用一個(gè)

PUSH、POP就可以了。由語(yǔ)句“rowV-pop();colV-pop();”可知,(2)、(3)空缺處

應(yīng)該把row和col壓入堆棧。由于是先彈出row后彈出col,且根據(jù)棧的“后進(jìn)先

出''操作規(guī)則可知,應(yīng)先將col壓入棧,再壓入row,因此(2)空缺處所填寫(xiě)的內(nèi)容

是“col”,(3)空缺處所填寫(xiě)的內(nèi)容是“row”。[算法4-2]分析?:同理,由[算法4-2]中

的語(yǔ)句“rowV?pop();colV?pop();''可知,(5)、(6)空缺處應(yīng)該把row和col壓入堆

棧。由于是先彈出row后彈出col,因此應(yīng)先將col壓入棧,再壓入row,即(5)空

缺處所填寫(xiě)的內(nèi)容是飛。1”,(6)空缺處所填寫(xiě)的內(nèi)容是“row”。由于判斷條件1為真

時(shí),需要進(jìn)行入棧操作,因此判斷條件1應(yīng)是判斷字符是不是左括號(hào),如果是就入

棧,即(8)空缺處應(yīng)選擇選項(xiàng)C的”字符是左括號(hào)“。判斷條件2和判斷條件3是相

關(guān)聯(lián)的,當(dāng)兩個(gè)判斷條件都為真時(shí),要進(jìn)行出棧操作,因此要判斷棧是否為空。由

此可以得出在判斷條件2和判斷條件3中,至少有一個(gè)必定是用來(lái)判斷棧是否為空

的。可以用判斷棧頂元素米確定當(dāng)前拈號(hào)是否和棧中壓入拈號(hào)是同一類(lèi)型的,但前

提是左括號(hào)類(lèi)型入了棧,而且要在棧頂。如果(7)空缺處壓入的是k,則正好符合這

一條件。所以⑺空缺處所填寫(xiě)的內(nèi)容是“k”。同時(shí),判斷括號(hào)是否匹配的條件也就

可以確定了,如果當(dāng)前ch是右括號(hào)且當(dāng)前棧頂?shù)淖罄ㄌ?hào)(只有左括號(hào)入了棧)類(lèi)型

與ch匹配,則匹配成功。根據(jù)試題說(shuō)明中的提示信息:若“判斷條件2”的邏輯判

斷結(jié)果為假,就無(wú)需對(duì)“判斷條件3”進(jìn)行判斷,所以應(yīng)把“棧不空”作為判斷條件

2,“棧頂元素表示的是與當(dāng)前字符匹配的左括號(hào)”作為判斷條件3,即(9)空缺處應(yīng)

選擇選項(xiàng)E的“棧不空”,(10)空缺處應(yīng)選擇選項(xiàng)A的“棧頂元素表示的是與當(dāng)前字

符匹配的左括號(hào)”。

知識(shí)點(diǎn)解析:暫無(wú)解析

18、請(qǐng)閱讀以下技術(shù)說(shuō)明、類(lèi)圖及C++代碼,根據(jù)要求將(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論