




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2023年上半年軟件設(shè)計(jì)師上午試題●兩個(gè)同符號(hào)的數(shù)相加或異符號(hào)的數(shù)相減,所得結(jié)果的符號(hào)位SF和進(jìn)位標(biāo)志CF進(jìn)行___(1)___運(yùn)算為1時(shí),表達(dá)運(yùn)算的結(jié)果產(chǎn)生溢出。
(1)A.與B.或C.與非D.異或●若浮點(diǎn)數(shù)的階碼用移碼表達(dá),尾數(shù)用補(bǔ)碼表達(dá)。兩規(guī)格化浮點(diǎn)數(shù)相乘,最后對結(jié)果規(guī)格化時(shí),右規(guī)的右移位數(shù)最多為___(2)___位。
(2)A.1B.2C.尾數(shù)位數(shù)D.尾數(shù)位數(shù)-1●高速緩存Cache與主存間采用全相聯(lián)地址映像方式,高速緩存的容量為4MB,分為4塊,每塊1MB,主存容量為256MB。若主存讀寫時(shí)間為30ns,高速緩存的讀寫時(shí)間為3ns,平均讀寫時(shí)間為3.27ns,則該高速緩存的命中率為___(3)___%。若地址變換表如下所示,則主存地址為8888888H時(shí),高速緩存地址為___(4)___H。0123地址變換表38H88H59H67H(3)A.90B.95C.97D.99
(4)A.488888B.388888C.288888D.188888
●若某計(jì)算機(jī)系統(tǒng)是由500個(gè)元器件構(gòu)存構(gòu)成的串聯(lián)系統(tǒng),且每個(gè)元器件的失效率均為10-7/H,在不考慮其他因素對可靠性的影響時(shí),該計(jì)算機(jī)系統(tǒng)的平均故障間隔時(shí)間為___(5)___小時(shí)。
(5)A.2×104B.5×104C.2×105D.5×10●某指令流水線由5段組成,各段所需要的時(shí)間如下圖所示。連續(xù)輸入10條指令時(shí)的吞吐率為___(6)___。
(6)A.10/70ΔtB.10/49ΔtC.10/35ΔtD.10/30Δt●相對于DES算法而言,RSA算法的___(7)___,因此,RSA___(8)___。
(7)A.加密密鑰和解密密鑰是不相同的B.加密密鑰和解密密鑰是相同的
C.加密速度比DES要高D.解密速度比DES要高
(8)A.更合用于對文獻(xiàn)加密B.保密性不如DES
C.可用于對不同長度的消息生成消息摘要D.可以用于數(shù)字署名●駐留在多個(gè)網(wǎng)絡(luò)設(shè)備上的程序在短時(shí)間內(nèi)同時(shí)產(chǎn)生大量的請求消息沖擊某Web服務(wù)器,導(dǎo)致該服務(wù)器不堪重負(fù),無法正常響應(yīng)其他合法用戶的請求,這屬于___(9)___。
(9)A.網(wǎng)上沖浪B.中間人襲擊C.DDoS襲擊D.MAC襲擊●上海市標(biāo)準(zhǔn)化行政主管部門制定并發(fā)布的工業(yè)產(chǎn)品的安全、衛(wèi)生規(guī)定的標(biāo)準(zhǔn),在其行政區(qū)域內(nèi)是___(10)___。
(10)A.強(qiáng)制性標(biāo)準(zhǔn)D.推薦性標(biāo)準(zhǔn)C.自愿性標(biāo)準(zhǔn)D.指導(dǎo)性標(biāo)準(zhǔn)●小王購買了一個(gè)“海之久”牌活動(dòng)硬盤,并且該活動(dòng)硬盤還包具有一項(xiàng)實(shí)用新型專利,那么,王某享有___(11)___。
(11)A.“海之久”商標(biāo)專用權(quán)B.該盤的所有權(quán)
C.該盤的實(shí)用新型專利權(quán)D.前三項(xiàng)權(quán)利之所有●MPC(MultimediaPC)與PC的重要區(qū)別是增長了___(12)___。
(12)A.存儲(chǔ)信息的實(shí)體B.視頻和音頻信息的解決能力
C.光驅(qū)和聲卡D.大容量的磁介質(zhì)和光介質(zhì)●人眼看到的任一彩色光都是亮度、色調(diào)和飽和度三個(gè)特性的綜合效果,其中_(13)_反映顏色的種類。
(13)A.色調(diào)B.飽和度C.灰度D.亮度●CD上聲音的采樣頻率為44.1kHz,樣本精度為16b/s,雙聲道立體聲,那么其未經(jīng)壓縮的數(shù)據(jù)傳輸率為___(14)___。
(14)A.88.2kb/sB.705.6kb/sC.1411.2kb/sD.1536.0kb/s●在軟件項(xiàng)目管理中可以使用各種圖形工具來輔助決策,下面對Gantt圖的描述中,不對的的是___(15)___。
(15)A.Gantt圖表現(xiàn)了各個(gè)活動(dòng)的連續(xù)時(shí)間
B.Gantt圖表現(xiàn)了各個(gè)活動(dòng)的起始時(shí)間
C.Gantt圖反映了各個(gè)活動(dòng)之間的依賴關(guān)系
D.Gantt圖表現(xiàn)了完畢各個(gè)活動(dòng)的進(jìn)度●模塊的耦合度描述了___(16)___。
(16)A.模塊內(nèi)各種元素結(jié)合的限度B.模塊內(nèi)多個(gè)功能之間的接口
C.模塊之間公共數(shù)據(jù)的數(shù)量D.模塊之間互相關(guān)聯(lián)的限度●內(nèi)聚是一種指標(biāo),表達(dá)一個(gè)模塊___(17)___。
(17)A.代碼優(yōu)化的限度B.代碼功能的集中限度
C.完畢任務(wù)時(shí)及時(shí)限度D.為了與其他模塊連接所要完畢的工作量●在軟件項(xiàng)目開發(fā)過程中,評估軟件項(xiàng)目風(fēng)險(xiǎn)時(shí),___(18)___與風(fēng)險(xiǎn)無關(guān)。
(18)A.高級管理人員是否正式承諾支持該項(xiàng)目
B.開發(fā)人員和用戶是否充足理解系練的需求
C.最終用戶是否批準(zhǔn)部署已開發(fā)的系統(tǒng)
D.開發(fā)需要的資金是否能準(zhǔn)時(shí)到位●開發(fā)專家系統(tǒng)時(shí),通過描述事實(shí)和規(guī)則由模式匹配得出結(jié)論,這種情況下合用的開發(fā)語言是___(19)___。
(19)A.面向?qū)ο笳Z言B.函,數(shù)式語言C.過程式語言D.邏輯式語言●
高級程序設(shè)計(jì)語言中用于描述程序中的運(yùn)算環(huán)節(jié)、控制結(jié)構(gòu)及數(shù)據(jù)傳輸?shù)氖莀__(20)___。
(20)A.語句B.語義C.語用D.語法●為了解決進(jìn)程間的同步和互斥問題,通常采用一種稱為___(21)___機(jī)制的方法。若系統(tǒng)中有5個(gè)進(jìn)程共享若干個(gè)資源R,每個(gè)進(jìn)程都需要4個(gè)資源R,那么使系統(tǒng)不發(fā)生死鎖的資源R的最少數(shù)目是___(22)___。
(21)A.調(diào)度B.信號(hào)量C.分派D.通訊
(22)A.20B.18C.16D.15●在UNIX操作系統(tǒng)中,把輸入/輸出設(shè)備看作是___(23)___。
(23)A.普通文獻(xiàn)B.目錄文獻(xiàn)C.索引文獻(xiàn)D.特殊文獻(xiàn)●某軟盤有40個(gè)磁道,磁頭從一個(gè)磁道移至另一個(gè)磁道需要5ms。文獻(xiàn)在磁盤上非連續(xù)存放,邏輯上相鄰數(shù)據(jù)塊的平均距離為10個(gè)磁道,每塊的旋轉(zhuǎn)延遲時(shí)間及傳輸時(shí)間分別為lOOms和25ms,則讀取一個(gè)100塊的文獻(xiàn)需要___(24)___時(shí)間。
(24)A.17500msB.15000msC.5000msD.25000ms●文獻(xiàn)系統(tǒng)中,設(shè)立打開文獻(xiàn)(Open)系統(tǒng)功能調(diào)用的基本操作是___(25)___。
(25)A.把文獻(xiàn)信息從輔存讀到內(nèi)存
B.把文獻(xiàn)的控制管理信息從輔存讀到內(nèi)存
C.把磁盤的超級塊從輔存讀到內(nèi)存
D.把文獻(xiàn)的FAT表信息從輔存讀到內(nèi)存●最重要的軟件質(zhì)量度量指標(biāo)有對的性、可維護(hù)性、完整性和可用性,下面關(guān)于這些質(zhì)量指標(biāo)的描述中對的的是___(26)___。
(26)A.軟件維護(hù)的工作量比開發(fā)階段的工作量小
B.對的性用每千行代碼的故障(fault)數(shù)來度量
C.軟件完整性是指軟件功能與需求符合的限度
D.可用性與用戶的操作效率和用戶對軟件的主觀評價(jià)有關(guān)●某工程計(jì)劃圖如下圖所示,弧上的標(biāo)記為作業(yè)編碼及其需要的完畢時(shí)間(天),作業(yè)E最遲應(yīng)在第___(27)___天開始。(27)A.7B.9C.12D.13●正式的技術(shù)評審FTR(FormalTechnicalReview)是軟件工程師組織的軟件質(zhì)量保證活動(dòng),下面關(guān)于FTR指導(dǎo)原則中不對的的是___(28)___。
(28)A.評審產(chǎn)品,而不是評審生產(chǎn)者的能力
B.要有嚴(yán)格的評審計(jì)劃,并遵守日程安排
C.對評審中出現(xiàn)的問題要充足討論,以求徹底解決
D.限制參與者人數(shù),并規(guī)定評審會(huì)之前做好準(zhǔn)備●兩個(gè)小組獨(dú)立地測試同一個(gè)程序,第一組發(fā)現(xiàn)25個(gè)錯(cuò)誤,第二組發(fā)現(xiàn)30個(gè)錯(cuò)誤,在兩個(gè)小組發(fā)現(xiàn)的錯(cuò)誤中有15個(gè)是共同的,那么可以估計(jì)程序中的錯(cuò)誤總數(shù)是___(29)___個(gè)。
(29)A.25B.30C.50D.60●下面有關(guān)測試的說法對的的是___(30)__。
(30)A.測試人員應(yīng)當(dāng)在軟件開發(fā)結(jié)束后開始介入
B.測試重要是軟件開發(fā)人員的工作
C.要根據(jù)軟件具體設(shè)計(jì)中設(shè)計(jì)的各種合理數(shù)據(jù)設(shè)計(jì)測試用例
D.嚴(yán)格按照測試計(jì)劃進(jìn)行,避免測試的隨意性●在繪制數(shù)據(jù)流圖時(shí),要遵循的一個(gè)原則是父圖與子圖的平衡,所謂平衡是指___(31)___。
(31)A.父圖和子圖都不得改變數(shù)據(jù)流的性質(zhì)
B.子圖不改變父圖數(shù)據(jù)流的—致性
C.父圖的輸入/輸出數(shù)據(jù)流與子圖的輸入/輸出數(shù)據(jù)流一致
D.子圖的輸出數(shù)據(jù)流完全由父圖的輸入數(shù)據(jù)流擬定●下圖中的程序由A、B、C、D、E5個(gè)模塊組成,下表中描述了這些模塊之間的接口,每一個(gè)接口有一個(gè)編號(hào)。此外,模塊A、D和E都要引用一個(gè)專用數(shù)據(jù)區(qū)。那么A和E之間耦合關(guān)系是___(32)___。編號(hào)參數(shù)返回值1數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)2數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)3功能碼無4無列表(32)A.公共耦合B.?dāng)?shù)據(jù)耦合C.內(nèi)容耦合D.無耦合●在C++語言中,若類C中定義了一個(gè)方法intf(inta,intb),那么方法___(33)___不能與該方法同時(shí)存在于類C中。
(33)A.intf(intx,inty)B.intf(floata,intb)
C.floatf(intx,floaty)D.intf(intx,floaty)●已知3個(gè)類O、P和Q,類O中定義了一個(gè)私有方法F1、一個(gè)公有方法F2和一個(gè)受保護(hù)的方法F3:類P和類Q是類O的派生類,其繼承方式如下所示:
classP:protectedO{…};
classQ:publicO{…};
關(guān)于方法F1的描述中對的的是___(34)___;關(guān)于方法F2韻描述中對的的是___(35)___;關(guān)于方法F3的描述中對的的是___(36)___。
(34)A.方法F1無法被訪問B.只有在類O內(nèi)才干訪問方法F1
C.只有在類P內(nèi)才干訪問方法F1D.只有在類Q內(nèi)才干訪問方法F1
(35)A.類O、P和Q的對象都可以訪問方法F2
B.類P和Q的對象都可以訪問方法F2
C.類0和Q的對象都可以訪問方法F2
D.只有在類P內(nèi)才干訪問方法F2
(36)A.類0、P和Q的對象都可以訪問方法F3
B.類0、P和Q的對象都不可以訪問方法F3
C.類0和Q的對象都可以訪問方法F3
D.類P和Q的對象都可以訪問方法F3。●在面向?qū)ο筌浖_發(fā)過程中,采用設(shè)計(jì)模式___(37)___。
(37)A.允許在非面向?qū)ο蟪绦蛟O(shè)計(jì)語言中使用面向?qū)ο蟮母拍?/p>
B.以復(fù)用成功的設(shè)計(jì)和體系結(jié)構(gòu)
C.以減少設(shè)計(jì)過程創(chuàng)建的類的個(gè)數(shù)
D.以保證程序的運(yùn)營速度達(dá)成最優(yōu)值●以下關(guān)于單身模式(Singleton)的描述中,對的的是___(38)___。
(38)A.它描述了只有一個(gè)方法的類的集合
B.它可以保證一個(gè)類只產(chǎn)生一個(gè)唯一的實(shí)例
C.它描述了只有一個(gè)屬性的類的集合
D.它可以保證一個(gè)類的方法只能被一個(gè)唯一的類調(diào)用●下列關(guān)于一個(gè)類的靜態(tài)成員的描述中,不對的的是___(39)___。
(39)A.該類的對象共享其靜態(tài)成員變量的值
B.靜態(tài)成員變量可被該類的所有方法訪問
C.該類的靜態(tài)方法只能訪問該類的靜態(tài)成員變量
D.該類的靜態(tài)數(shù)據(jù)成員變量的值不可修改●在MVC(模型/視圖/控制器)模式中,視圖部分描述的是___(40)___。
(40)A.將應(yīng)用問題域中包含的抽象領(lǐng)域知識(shí)呈現(xiàn)給用戶的方式
B.應(yīng)用問題域中所包含的抽象類
C.用戶界面對用戶輸入的響應(yīng)方式
D.應(yīng)用問題域中包含的抽象領(lǐng)域知識(shí)●對于如下所示的UML類圖,對的的描述是___(41)___。(41)A.類B的實(shí)例中包含了對類C的實(shí)例的引用
B.類A的實(shí)例中包含了對類B的實(shí)例的引用
C.類A的實(shí)例中包含了對類C的實(shí)例的引用
D.類B的實(shí)例中包含了對類A的實(shí)例的引用●UML中關(guān)聯(lián)的多重度是指___(42)___。
(42)A.一個(gè)類有多少個(gè)方法被另一個(gè)類調(diào)用
B.一個(gè)類的實(shí)例可以與另一個(gè)類的多少個(gè)實(shí)例相關(guān)聯(lián)
C.一個(gè)類的某個(gè)方法被另一個(gè)類調(diào)用的次數(shù)
D.兩個(gè)類所具有的相同的方法和屬性●已知3個(gè)類A、B和C,其中類A由類B的一個(gè)實(shí)例和類C的1個(gè)或多個(gè)實(shí)例構(gòu)成??梢詫Φ谋磉_(dá)類A、B和C之間關(guān)系的UML類圖是___(43)___。(43)●對于下面的文法G[S],___(44)___是其句子(從S出發(fā)開始推導(dǎo))。
G(S]:S→M1(S,M)M→*P|MPP→a|b|c|…|x|x|z
(44)A.((a,O))B.((fac,bb),g)C.(abc)D.(c,(da))●與逆波蘭式ab+-c*d-相應(yīng)的中綴表達(dá)式是___(45)___。
(45)A.a(chǎn)-b-c*dB.(a+b)*c-dC.a(chǎn)+b*c-dD.(a+b)*(-c-d)●下面的C程序代碼段在運(yùn)營中會(huì)出現(xiàn)___(46)___錯(cuò)誤。
inti=O;
while(i<10);
{i=i+1;}
(46)A.語法D.類型不匹配C.變量定義D.動(dòng)態(tài)語義●設(shè)有關(guān)系R、S如下所示,則關(guān)系代數(shù)表達(dá)式R÷S的結(jié)果集為___(47)___。關(guān)系RABCa1b1c1a1b2c1a2b2c2關(guān)系SBDb1d1b2d1(47)A.Aa1a1B.Aa1C.ACa1c1D.ACa1c1a2c2●某數(shù)據(jù)庫中有員工關(guān)系E、產(chǎn)品關(guān)系P、倉庫關(guān)系W和庫存關(guān)系I,其中:員工關(guān)系E(employeeID,name,department)中的屬性為:員工編號(hào),姓名,部門;
產(chǎn)品關(guān)系P(productID,name,model,size,color)中的屬性為:產(chǎn)品編號(hào),產(chǎn)品名稱,型號(hào),尺寸,
顏色;
倉庫關(guān)系W(warehouseID,name,address,employeeID)中的屬性為:倉庫編號(hào),倉庫名稱,地址,負(fù)責(zé)人編號(hào);
庫存關(guān)系I(warehouseID,productID,quantity)中的屬性為倉庫編號(hào),產(chǎn)品編號(hào)和產(chǎn)品數(shù)量。
a.若規(guī)定倉庫關(guān)系的負(fù)責(zé)人引用員工關(guān)系E的員工編號(hào),員工關(guān)系E的員工編號(hào)、倉庫關(guān)系W的倉庫編號(hào)和產(chǎn)品關(guān)系P的產(chǎn)品編號(hào)不能為空且惟一標(biāo)記一個(gè)記錄,并且倉庫的地址不能為空,則依次要滿足的完整性約束是___(48)___。
(48)A.實(shí)體完整性、參照完整性、用戶定義完整性
B.參照完整性、實(shí)體完整性·,用戶定義完整性
C.用戶定義完整性、實(shí)體完整性、參照完整性
D.實(shí)體完整性、用戶定義完整性、參照完整性
b.若需得到每種產(chǎn)品的名稱和該產(chǎn)品的總庫存量,則相應(yīng)的查詢語句為:
SELELCTnameSUM(quantity)
FROMP,I
WHERE___(49)___
(49)A.P.productID=I.productID;
B.P.productID=1.productIDORDERBYname;
C.P.productID=1.productIDGROUPBYname;
D.P.productID=1.productIDGROUPBYname,quantity;
c.若需得到在所有倉庫中都存在的產(chǎn)品的名稱,則相應(yīng)的查詢語句為:
SELECTnameFROMP
WHERE___(50)___
(SELECT*FROMW
WHERENOTEXISTS
(SELECT*FROMI
WHEREP.productID=I.productIDANDW.warehouseID=1.warehouseID))
(50)A.EXISTSB.NOTEXISTSC.IND.NOTIN●對事務(wù)回滾的對的描述是___(51)___。
(51)A.將該事務(wù)對數(shù)據(jù)庫的修改善行恢復(fù)
B.將事務(wù)對數(shù)據(jù)庫的更新寫入硬盤
C.跳轉(zhuǎn)到事務(wù)程序的開頭重新執(zhí)行
D.將事務(wù)中修改的變量值恢復(fù)到事務(wù)開始時(shí)的初值●拓?fù)湫蛄惺菬o環(huán)有向圖中所有頂點(diǎn)的一個(gè)線性序列,圖中任意途徑中的各個(gè)頂點(diǎn)在該圖的拓?fù)湫蛄兄斜3窒群箨P(guān)系,___(52)___為—下圖所示有向圖的一個(gè)拓?fù)湫蛄小?52)A.1234567B.1526374C.5126347D.5123764●為便于存儲(chǔ)和解決一般樹結(jié)構(gòu)形式的信息,常采用孩子-兄弟表達(dá)法將其轉(zhuǎn)換成二叉樹(左子關(guān)系表達(dá)父子、右子關(guān)系表達(dá)兄弟),與下圖所示的樹相應(yīng)的二叉樹是___(53)___。(53)
●給定一個(gè)有n個(gè)元素的有序線性表。若采用順序存儲(chǔ)結(jié)構(gòu),則在等概率前提下,刪除其中的一個(gè)元素平均需要移動(dòng)___(54)___個(gè)元素。
(54)A.(n+1)/2B.n/2C.(n-1)/2D.1●在平衡二叉樹中,___(55)___。
(55)A.任意結(jié)點(diǎn)的左、右子樹結(jié)點(diǎn)數(shù)目相同
B.任意結(jié)點(diǎn)的左、右子樹高度相同
C.任意結(jié)點(diǎn)的左右子樹高度之差的絕對值不大于1
D.不存在度為1的結(jié)點(diǎn)●在___(56)___存儲(chǔ)結(jié)構(gòu)中,數(shù)據(jù)結(jié)構(gòu)中元素的存儲(chǔ)地址與其關(guān)鍵字之間存在某種映射關(guān)系。
(56)A.順序(Sequence)B.鏈表(Link)C.索引(Index)D.散列(Hash)●對于求取兩個(gè)長度為n的字符串的最長公共子序列(LCS)問題,運(yùn)用___(57)___策略可以有效地避免子串最長公共子序列的反復(fù)計(jì)算,得屆時(shí)間復(fù)雜度為O(n2)的對的算法。
串<1,0,0,1,0,1,0,1>和<0,1,0,1,1,0,1,1>的最長公共子序列的長度為_(58)_。
(57)A.分治B.貪心C.動(dòng)態(tài)規(guī)劃D.分支—限界
(58)A.3B.4C.5D.6●設(shè)某算法的計(jì)算時(shí)間可用遞推關(guān)系式T(n)=2T(n/2)+n表達(dá),則該算法的時(shí)間復(fù)雜度。為___(59)___。
(59)A.O(lgn)B.O(nlgn)C.O(n)D.O(n2)●___(60)___在其最佳情況下的算法時(shí)間復(fù)雜度為O(n)。
(60)A.插入排序B.歸并排序C.快速排序D.堆排序●與多模光纖相比較,單模光纖具有___(61)___等特點(diǎn)。
(61)A.較高的傳輸率、較長的傳輸距離、較高的成本
B.較低的傳輸率、較短的傳輸距離、較高的成本
C.較高的傳輸率、較短的傳輸距離、較低的成本
D.較低的傳輸率、較長的傳輸距離、較低的成本●CDMA系統(tǒng)中使用的多路復(fù)用技術(shù)是___(62)___。我國自行研制的移動(dòng)通信3G標(biāo)準(zhǔn)是___(63)___。
(62)A.時(shí)分多路B.波分多路C.碼分多址D.空分多址
(63)A.TD-SCDMAB.WCDMAC.CDMA2023D.GPRS●“<titlestyle="italic">science</title>”是一個(gè)XML元素的定義,其中元素標(biāo)記的屬性值是___(64)___。
(64)A.titleB.styleC.italicD.science●某校園網(wǎng)用戶無法訪問外部站點(diǎn)4,管理人員在windows操作系統(tǒng)下可以使用___(65)___判斷故障發(fā)生在校園網(wǎng)內(nèi)還是校園網(wǎng)外。
(65)A.ping4B.tracert4
C.netstat4D.arp4●OriginallyintroducedbyNetscapeCommunications,___(66)___areageneralmechanismwhichHTTPServersideapplications,suchasCGI(67),canusetobothstoreandretrieveinformationontheHTTP___(68)___sideoftheconnection.Basically,Cookiescanbeusedtocompensateforthe___(69)___natureofHTTP.Theadditionofasimple,persistent,client-sidestatesignificantlyextendsthecapabilitiesofWWW-based___(70)___.
(66)A.BrowsersB.CookiesC.ConnectionsD.Scripts
(67)A.graphicsB.processesC.scriptsD.texts
(68)A.ClientB.EditorC.CreatorD.Server
(69)A.fixedB.flexibleC.stableD.stateless
(70)A.programsB.applicationsC.frameworksD.constrains●WebSQLisaSQL-like___(71)___languageforextractinginformationfromtheweb.Itscapabilitiesforperformingnavigationofweb___(72)___makeitausefultoolforautomatingseveralweb-relatedtasksthatrequirethesystematicprocessingofeitherallthelinksina___(73)___,allthepagesthatcanbereachedfromagivenURLthrough___(74)___thatmatchapattern,oracombinationofboth.WebSQLalsoprovidestransparentaccesstoindexserversthatcanbequeriedviatheCommon___(75)___Interface.
(71)A.queryB.transactionC.communicationD.programming
(72)A.browsersB.serversC.hypertextsD.clients
(73)A.hypertextB.pageC.protocolD.operation
(74)A.pathsB.chipsC.toolsD.directories
(75)A.RouterB.DeviceC.ComputerD.Gateway2023年上半年軟件設(shè)計(jì)師下午試題試題一(15分)
閱讀下列說明以及數(shù)據(jù)流圖,回答問題1、問題2和問題3,將解答填入答題紙的相應(yīng)欄內(nèi)。
[說明]
某學(xué)校建立了一個(gè)網(wǎng)上作業(yè)提交與管理系統(tǒng),基本功能描述如下:
(1)帳號(hào)和密碼。任課老師用帳號(hào)和密碼登錄系統(tǒng)后,提交所有選課學(xué)生的名單。系統(tǒng)自動(dòng)為每個(gè)選課學(xué)生創(chuàng)建登錄系統(tǒng)的帳號(hào)和密碼。
(2)作業(yè)提交。學(xué)生使用帳號(hào)和密碼登錄系統(tǒng)后,可以向系統(tǒng)申請所選課程的作業(yè)。
系統(tǒng)一方面檢查學(xué)生的當(dāng)前狀態(tài),假如該學(xué)生還沒有做過作業(yè),則從數(shù)據(jù)庫服務(wù)器申請一份作業(yè)。若申請成功,則顯示需要完畢的作業(yè)。學(xué)生需在線完畢作業(yè),單擊“提交”按鈕上交作業(yè)。
(3)在線批閱。系統(tǒng)自動(dòng)在線批改作業(yè),顯示作業(yè)成績,并將該成績記錄在作業(yè)成績記錄文獻(xiàn)中。
[問題1](3分)
假如將數(shù)據(jù)庫服務(wù)器(記為DB)作為一個(gè)外部實(shí)體,那么在繪制該系統(tǒng)的數(shù)據(jù)流圖時(shí),還應(yīng)有哪些外部實(shí)體和數(shù)據(jù)存儲(chǔ)?
[問題2](7分)
根據(jù)說明結(jié)合問題1的解答,指出在該系統(tǒng)的頂層數(shù)據(jù)流圖中應(yīng)有哪些數(shù)據(jù)流.請采用說明中的詞匯給出這些數(shù)據(jù)流的起點(diǎn)、終點(diǎn)以及數(shù)據(jù)流名稱,下表給出了數(shù)據(jù)流的部分信息,請?zhí)畛淇杖碧?。序?hào)起點(diǎn)終點(diǎn)數(shù)據(jù)流名稱1__(1)__網(wǎng)上作業(yè)提交與管理系統(tǒng)作業(yè)申請2__(2)__網(wǎng)上作業(yè)提交與管理系統(tǒng)提交的作業(yè)3網(wǎng)上作業(yè)提交與管理系統(tǒng)__(3)__需完畢的作業(yè)4網(wǎng)上作業(yè)提交與管理系統(tǒng)__(4)____(5)__5網(wǎng)上作業(yè)提交與管理系統(tǒng)__(6)__作業(yè)申請6網(wǎng)上作業(yè)提交與管理系統(tǒng)__(7)____(8)__7__(9)__網(wǎng)上作業(yè)提交與管理系統(tǒng)選課學(xué)生名單8__(10)__網(wǎng)上作業(yè)提交與管理系統(tǒng)__(11)__9__(12)__網(wǎng)上作業(yè)提交與管理系統(tǒng)帳號(hào)和密碼10__(13)__網(wǎng)上作業(yè)提交與管理系統(tǒng)帳號(hào)和密碼[問題3](5分)
根據(jù)數(shù)據(jù)流圖的設(shè)計(jì)原則,閱讀下圖所示的數(shù)據(jù)流圖,找出其中的錯(cuò)誤之處。試題二(15分)
閱讀下列說明以及UML類圖,回答問題1、問題2和問題3,將解答填入答題紙的相應(yīng)欄內(nèi)。
[說明]
某客戶信息管理系統(tǒng)中保存著兩類客戶的信息:
(1)個(gè)人客戶。對于這類客戶,系統(tǒng)保存了其客戶標(biāo)記(由系統(tǒng)生成)和基本信息(涉及姓名、住宅電話和email)。
(2)集團(tuán)客戶。集團(tuán)客戶可以創(chuàng)建和管理自己的若干名聯(lián)系人。對于這類客戶,系統(tǒng)除了保存其客戶標(biāo)記(由系統(tǒng)生成)之外,也保存了其聯(lián)系人的信息。聯(lián)系人的信息涉及姓名、住宅電話、email、辦公電話以及職位。
該系統(tǒng)除了可以保存客戶信息之外,還具有以下功能:
(1)向系統(tǒng)中添加客戶(addCustomer);
(2)根據(jù)給定的客戶標(biāo)記,在系統(tǒng)中查找該客戶(getCustomer);
(3)根據(jù)給定的客戶標(biāo)記,從系統(tǒng)中刪除該客戶(re田oveCustoner);
(4)創(chuàng)建新的聯(lián)系人(addContact);
(5)在系統(tǒng)中查找指定的聯(lián)系人(getContact);
(6)從系統(tǒng)中刪除指定的聯(lián)系人(removeContact)。
該系統(tǒng)采用面向?qū)ο蠓椒ㄟM(jìn)行開發(fā)。在面向?qū)ο蠓治鲭A段,根據(jù)上述描述,得到如表2-1所示的類,表2-1類名說明
CustomerlnformationSystem
客戶信息管理系統(tǒng)
IndividualCustomer
個(gè)人客戶
InstitutionalCustomer
集團(tuán)客戶
Contact
聯(lián)系人描述該客戶信息管理系統(tǒng)的UML類圖如圖2-1所示。
圖2-1客戶信息管理系統(tǒng)的UML類圖[問題1](3分)
請使用說明中的術(shù)語,給出圖2-1中類Customer和類Person的屬性。
[問題2](6分)
辨認(rèn)關(guān)聯(lián)的多重度是面向?qū)ο蠼_^程中的一個(gè)重要環(huán)節(jié)。根據(jù)說明中給出的描述,完畢圖中的(1)~(6)。
[問題3](6分)
根據(jù)說明中的敘述,抽象出如表2-2所示的方法,請指出圖2-1中的類CustomerlnformationSystem和InstitutionalCustomer應(yīng)分別具有其中的哪些方法。表2-2功能描述方法名
向系統(tǒng)中添加客戶
addCustomer
根據(jù)給定的客戶標(biāo)記,在系統(tǒng)中查找該客戶
getCustomer
根據(jù)給定的客戶標(biāo)記,從系統(tǒng)中刪除該客戶
removeCustomer
創(chuàng)建新的聯(lián)系人
addContact
在系統(tǒng)中查找指定的聯(lián)系人
getContact
從系統(tǒng)中刪除指定的聯(lián)系人
removeContact試題三(15分)
閱讀下列說明,回答問題1、問題2和問題3,將解答填入答題紙的相應(yīng)欄內(nèi)。
[說明]
某單位資料室需要建立一個(gè)圖書管理系統(tǒng),初步的需求分析結(jié)果如下:
(1)資料室有圖書管理員若干名,他們負(fù)責(zé)已購入圖書的編目和借還工作,每名圖書管理員的信息涉及工號(hào)和姓名;
(2)讀者可在閱覽室讀書,也可通過圖書流通室借述圖書,讀者信息涉及讀者ID、姓名、電話和Email,系統(tǒng)為不同讀者生成不同的讀者ID;
(3)每部書在系統(tǒng)中相應(yīng)惟一的一條圖書在版編目數(shù)據(jù)(CIP,以下簡稱書目),書目的基本信息涉及ISBN號(hào)、書名、作者、出版商、出版年月,以及本資料室擁有該書的冊數(shù)(以下簡稱冊數(shù)),不同書目的ISBN號(hào)不相同;
(4)資料室對于同一書目的圖書可擁有多冊(本),圖書信息涉及圖書ID、ISBN號(hào)、存放位置、當(dāng)前狀態(tài),每一本書在系統(tǒng)中被賦予惟一的圖書ID;
(5)一名讀者最多只能借閱十本圖書,且每本圖書最多只能借兩個(gè)月,讀者借書時(shí)需由圖書管理員登記讀者ID、所借圖書ID、借閱時(shí)間和應(yīng)還時(shí)間,讀者還書時(shí)圖書管理員在相應(yīng)的借書信息中記錄歸還時(shí)間;
(6)當(dāng)某書目的可借出圖書的數(shù)量為零時(shí),讀者可以對其進(jìn)行預(yù)約登記,即記錄讀者ID、需要借閱的圖書的ISBN號(hào)、預(yù)約時(shí)間。
某書目的信息如表3-1所示,與該書目相應(yīng)的圖書信息如表3-2所示。表3-1書目信息書名作者出版商ISBN號(hào)出版年月冊數(shù)經(jīng)辦人(數(shù)據(jù)結(jié)構(gòu))嚴(yán)蔚敏
吳偉民清華大學(xué)出版社ISBN7-302-02368-91997.4401表3-2圖書信息圖書IDISBN號(hào)存放位置狀態(tài)經(jīng)辦人C832.1ISBN7-302-02368-9圖書流通室已借出01C832.2ISBN7-302-02368-9圖書閱覽室不外借01C832.3ISBN7-302-02368-9圖書流通室未借出01C832.4ISBN7-302-02368-9圖書流通室已預(yù)約01系統(tǒng)的重要業(yè)務(wù)解決如下:
(1)入庫管理;圖書購進(jìn)入庫時(shí),管理員查詢本資料室的書目信息,若該書的:書目尚未建立,則由管理員編寫該書的書目信息并錄入系統(tǒng),然后編寫并錄入圖書信息:否則,修改該書目的冊數(shù),然后編寫并錄入圖書信息,對于進(jìn)入流通室的書,其初始狀態(tài)為“未借出”,而送入閱覽室的書的狀態(tài)始終為“不外借”。
(2)借書管理:讀者借書時(shí),若有,則由管理員為該讀者辦理借書手續(xù),并記錄該讀者的借書信息,同時(shí)將借出圖書的狀態(tài)修改為“已借出”。
(3)預(yù)約管理;若圖書流通室沒有讀者要借的書,則可為該讀者建立預(yù)約登記,需要記錄讀者ID、書的ISBN號(hào)、預(yù)約時(shí)間和預(yù)約期限(最長為10天)。一旦其他讀者歸還這種書,就自動(dòng)告知該預(yù)約讀者。系統(tǒng)將自動(dòng)清除超過預(yù)約期限的預(yù)約記錄并修改相關(guān)信息。
(4)還書管理:讀者還書時(shí),則記錄相應(yīng)借還信息中的“歸還時(shí)間”,對于超期歸還者,系統(tǒng)自動(dòng)計(jì)算罰金(具體的計(jì)算過程此處省略)。系統(tǒng)同時(shí)自動(dòng)查詢預(yù)約登記表,若存在其他讀者預(yù)約該書的記錄,則將該圖書的狀態(tài)修改為“已預(yù)約”,并將該圖書ID寫入相應(yīng)的預(yù)約記錄中(系統(tǒng)在清除超過預(yù)約期限的記錄時(shí)解除該圖書的“已預(yù)約”狀態(tài));否則,將該圖書的狀態(tài)修改為“未借出”。
(5)告知解決:對于已到期且未歸還的圖書,系統(tǒng)通過Email自動(dòng)告知讀者;若讀者預(yù)約的書已到,系統(tǒng)則自動(dòng)通過Email告知該讀者來辦理借書手續(xù)。
[問題1](4分)
根據(jù)以上說明設(shè)計(jì)的實(shí)體聯(lián)系圖如圖3-1所示,請指出讀者與圖書、書目與讀者、書目與圖書之間的聯(lián)系類型。
圖3-1圖書管理系統(tǒng)的實(shí)體聯(lián)系圖[問題2](4分)
該圖書管理系統(tǒng)的重要關(guān)系模式如下,請補(bǔ)充“借還記錄”和“預(yù)約登記”關(guān)系中的空缺。
管理員(工號(hào),姓名)
讀者(讀者ID,姓名,電話,Email)
書目(1SBN號(hào),書名,作者,出版商,出版年月,冊數(shù),經(jīng)辦人)
圖書(圖書ID,ISBN號(hào),存放位置,狀態(tài),經(jīng)辦人)
借還記錄(__(a)__,借出時(shí)間,應(yīng)還時(shí)間,歸還時(shí)間)
預(yù)約登記(__(b)__,預(yù)約時(shí)間,預(yù)約期限,圖書ID)
注:時(shí)間格式為“年.月.日時(shí):分:秒”
[問題3](7分)
請指出問題2中給出的讀者、書目關(guān)系模式的主鍵,以及圖書、借還記錄和預(yù)約登記關(guān)系模式的主鍵和外鍵。試題四(15分)
閱讀以下說明,回答問題1、問題2和問題3,將解答填入答題紙的相應(yīng)欄內(nèi)。
[說明]
某單位正在使用一套C/S模式的應(yīng)用軟件系統(tǒng),現(xiàn)在需要升級為B/S應(yīng)用模式,但需要保持業(yè)務(wù)的連續(xù)性。開發(fā)人員提出用WebService作為中間層的接口進(jìn)行開發(fā)。
[問題1](6分)
請用120字以內(nèi)文字,從業(yè)務(wù)的繼承性、升級成本(時(shí)間、工作量)和擴(kuò)展性三個(gè)方面簡要說明開發(fā)人員所提方案的優(yōu)點(diǎn)。
[問題2](3分)
WebService的三個(gè)基本技術(shù)是WSDL;SOAP、UDDI,它們都是以XML為基礎(chǔ)定義的,請用120字以內(nèi)文字,簡要說明WSDL、SOAP和UDDI的作用。
[問題3](6分)
服務(wù)注冊中心、服務(wù)提供者和服務(wù)請求者之間的交互和操作構(gòu)成了WebService的體系結(jié)構(gòu),如圖4-1所示。請用180字以內(nèi)文字,說明這三者的重要功能及其交互過程。
圖4-1WebService的工作模式試題五(15分)
閱讀下列說明、圖和C代碼,將應(yīng)填入__(n)__處的字句寫在答題紙的相應(yīng)欄內(nèi)。
[說明5-1]
B樹是一種多叉平衡查找樹。一棵m階的B樹,或?yàn)榭諛?,或?yàn)闈M足下列特性的m叉樹:
①樹中每個(gè)結(jié)點(diǎn)至多有m棵子樹;
②若根結(jié)點(diǎn)不是葉子結(jié)點(diǎn),則它至少有兩棵子樹;
③除根之外的所有非葉子結(jié)點(diǎn)至少有「m/2]棵子樹;
④所有的非葉子結(jié)點(diǎn)中包含卞列數(shù)據(jù)信息
(n,A0,K1,A1,K2,A2,…,Kn,An)
其中:Ki(i=1,2,…,n)為關(guān)鍵字,且Ki<Ki+1(i=1,2,…,n-1):Ai(i=0,1,…,n)
⑤所有的葉子結(jié)點(diǎn)都出現(xiàn)在同一層次上,并且不帶信息(可以看作縣外部結(jié)點(diǎn)或查找失敗的結(jié)點(diǎn),事實(shí)上這些結(jié)點(diǎn)不存在,指向這些結(jié)點(diǎn)的指針為空)。
例如,一棵4階B樹如圖5-1所示(結(jié)點(diǎn)中關(guān)鍵字的數(shù)目省略)。
圖5-14階B樹示例B樹的階M、bool類型、關(guān)鍵字類型及B樹結(jié)點(diǎn)的定義如下:
#defineM4/*B樹的階*/
typedefenum{FALSE:O,TRUE=1}bool;
typedefintElemKeyType;
typedefstructBTreeNode{
intnumkeys;/*結(jié)點(diǎn)中關(guān)鍵字的數(shù)目*/
structBTreeNode*parent;/*指向父結(jié)點(diǎn)的指針,樹根的父結(jié)點(diǎn)指針為空*/
structBTreeNode*A[M];/*指向子樹結(jié)點(diǎn)的指針數(shù)組*/
ElemgeyTypeK[M];/*存儲(chǔ)關(guān)鍵字的數(shù)組,K[0]閑置不用*/
}BTreeNode;
函數(shù)SearchBtree(BTreeNode*root,ElemKeyTypeakey,BTreeNode**ptr)的功能是:在給定的一棵M階B樹中查找關(guān)鍵字akey所在結(jié)點(diǎn),若找到則返回TRUE,否則返回FALSE。其中,root是指向該M階B樹根結(jié)點(diǎn)的指針,參數(shù)ptr返回akey所在結(jié)點(diǎn)的指針,若akey不在該B樹中,則ptr返回查找失敗時(shí)空指針?biāo)诮Y(jié)點(diǎn)的指針,例如,在圖5-1所示的4階B樹中查找關(guān)鍵字25時(shí),ptr返回指向結(jié)點(diǎn)e的指針。
注:在結(jié)點(diǎn)中查找關(guān)鍵字akey時(shí)采用二分法。
[函數(shù)5-1]
boolSearchBtree(BTreeNode*root,ElemKeyTypeakey,BTreeNode**ptr)
int1w,hi,mid;
BTreeNode*p=root;
*ptr=NULL;
while(p){
lw=1;hi=__(1)__;
while(lw<=hi){
mid=(lw+hi)/2;
if(p->K[mid]==akey){
*ptr=p;
returnTRUE;
}
else
if(__(2)__)
hi=mid-1;
else
lw=mid+1;
}
*ptr=p;
p=__(3)__
}
returnFALSE;
[說明5-2]
在M階B樹中插入一個(gè)關(guān)鍵字時(shí),一方面在最接近外部結(jié)點(diǎn)的某個(gè)非葉子結(jié)點(diǎn)中增長一個(gè)關(guān)鍵字,若該結(jié)點(diǎn)中關(guān)鍵字的個(gè)數(shù)不超過M-1,則完畢插入;否則,要進(jìn)行結(jié)點(diǎn)的“分裂”解決。所謂“分裂”,就是把結(jié)點(diǎn)中處在中間位置上的關(guān)鍵字取出來并插入其父結(jié)點(diǎn)中,然后以該關(guān)鍵字為分界線,把原結(jié)點(diǎn)提成兩個(gè)結(jié)點(diǎn)?!胺至选边^程也許會(huì)一直連續(xù)到樹根,若樹根結(jié)點(diǎn)也需要分裂,則整棵樹的高度增1。
例如,在圖5-1所示的B樹中插入關(guān)鍵字25時(shí),需將其插入結(jié)點(diǎn)e中,由于e中已有3個(gè)關(guān)鍵字,因此將關(guān)鍵字24插入結(jié)點(diǎn)e的父結(jié)點(diǎn)b,并以24為分界線將結(jié)點(diǎn)e分裂為e1和e2兩個(gè)結(jié)點(diǎn),結(jié)果如圖5-2所示。
圖5-2在圖5-1所示的4階B樹中插入關(guān)鍵字25后的B樹函數(shù)Isgrowing(BTreeNode*root,ElemKeyTypeakey)的功能是;判斷在給定的M階B樹中插入關(guān)鍵字akey后,該B樹的高度是否增長,若增長則返回TRUE,否則返回FALSE。
其中,root是指向該M階B樹根結(jié)點(diǎn)的指針。
在函數(shù)Isgrowing中,一方面調(diào)用函數(shù)SearchBtree(即函數(shù)5-1)查找關(guān)鍵字akey是否在給定的M階B樹中,若在則返回FALSE(表白無需插入關(guān)鍵字akey,樹的高度不會(huì)增長);否則,通過判斷結(jié)點(diǎn)中關(guān)鍵字的數(shù)目考察插入關(guān)鍵字akey后該B樹的高度是否增長。
[函數(shù)5-2]
boolIsgrowing(BTreeNode*root,ElemKeyTypeakey)
{BTreeNode*t,*f;
if(!SearchBtree(__(4)__)){
t=f;
while(__(5)__){
t=t->parent;
}
if(!t)
returnTRUE;
}
returnFALSE;
}試題六(15分)
閱讀下列說明、圖和C++代碼,將應(yīng)填入__(n)__處的字句寫在答題紙的相應(yīng)欄內(nèi)。
[說明]
某訂單管理系統(tǒng)的部分UML類圖如圖6-1所示。
圖6-1訂單管理系統(tǒng)的部分UML類圖圖6-1中,Product表達(dá)產(chǎn)品,ProductList表達(dá)產(chǎn)品目錄,Order表達(dá)產(chǎn)品訂單,Orderltem表達(dá)產(chǎn)品訂單中的一個(gè)條目,OrderList表達(dá)訂單列表,SalesSystem提供訂單管理系統(tǒng)的操作接口。
請完善類Order的成員函數(shù)getOrderedAmount()和類SalesSystem的statistic()方法,各個(gè)類的屬性及部分方法定義參見下面的C++代碼。
[C++代碼]
classProduct{//產(chǎn)品類
private:
stringpid;//產(chǎn)品辨認(rèn)碼
stringdescription;//產(chǎn)品描述
doubleprice;//產(chǎn)品單價(jià)
public:
voidsetProductPrice(doubleprice);//設(shè)立產(chǎn)品單價(jià)
stringgetProductld();//獲取產(chǎn)品辨認(rèn)碼
stringgetProductDescription();//獲取產(chǎn)品描述
doublegetProductPrice();//獲取產(chǎn)品單價(jià)
//其他成員省略
};classProductList{//產(chǎn)品列表類
private:
vector<Product>products;
public:
ProductList();
ProductgetProductByIndex(inti);//獲得產(chǎn)品列表中的第i件產(chǎn)品
voidaddProduct(Productt);//在產(chǎn)品列表中加入一件產(chǎn)品
Product*getProductByID(stringpid);//獲得辨認(rèn)碼為pid的產(chǎn)品指針
unsignedintgetProductAmount();//獲得產(chǎn)品列表中的產(chǎn)品數(shù)量
};classorderltem{//訂單條目類
private:
Product*productPtr;//指向被定購產(chǎn)品的指針
intquantity;//定購數(shù)量
public:
orderltem(Product*,int);
Product*getProductptr();//獲取指向被定購產(chǎn)品的指針
intgetquantity();//獲取被定購產(chǎn)品的數(shù)量
};classOrder{//訂單類
private:
unsignedintorderid;//訂單辨認(rèn)號(hào)
vector<Orderltem>items;//訂單內(nèi)容(訂單項(xiàng))
public:
Order(unsignedintorderid);
//獲得辨認(rèn)碼為tid的產(chǎn)品在當(dāng)前訂單中被定購的數(shù)量
intgetOrderedAmount(stringtid);
voidadditem(Product*productPtr,unsignedintn);//在訂單中增長一個(gè)訂單項(xiàng)
//其他成員省略
};classorderList{//訂單列表類
private:
vector<order>orders;
public:
OrderList():
//Begin()返回指向訂單列表第一個(gè)元素的迭代器(指針)
virtualvector<Order>::iteratorOrderList::Begin();
//End()返回指向訂單列表最后一個(gè)元素之后的迭代器(指向一個(gè)不存在的元素)
virtualvector<order>::iteratororderList::End();
voidaddOrder(Ordert);//在訂單列表中加入一份訂單
//其他成員省略
};ClassSalesSystem{
private:
ProductListcatalog;//產(chǎn)品目錄
OrderListsales;//訂單列表
public:
SalesSystem();
voidstatistic();//記錄所有產(chǎn)品的定購情況
//其他成員省略
};//在訂單中查找辨認(rèn)碼為tid的產(chǎn)品的定購數(shù)量,若該產(chǎn)品沒有被定購,則返回0
intOrder::getOrderedAmount(stringtid)
{for(intk=0;k<items.size();k++){
if(__(1)__=tid)
return__(2)__;
}
return0;
}//方法statistic()依次記錄產(chǎn)品目錄中每個(gè)產(chǎn)品的訂購總量,并打印輸出
//每個(gè)產(chǎn)品的辨認(rèn)碼、描述、訂購總量和訂購金額
voidSalesSystem::statistic()
{unsignedihtk,t,ordered_qty.p;
vector<Order>::iteratorit;Productp;
tout<<"產(chǎn)品辨認(rèn)碼\t描述\t\t定購數(shù)量\t金額"<<endl;
for(k=0;k<catalog.getProductAmount();k++){//遍歷產(chǎn)品列表:
p=__(3)__;//從產(chǎn)品列表取得一件產(chǎn)品信息存入變量p
ordered_qty:0:
//通過迭代器變量it遍歷訂單列表中的每一份訂單
for(it=sales.Begin();__(4)__;it++{
//根據(jù)產(chǎn)品辨認(rèn)碼獲得產(chǎn)品p茬當(dāng)前訂單中被定購的數(shù)量
t__(5)__(p.getProductld());
ordered_qty+=t;
}
cout<<p.getProductld()<<"\t\t"<<p.getProductDescriptiOn<)<<"\t\t";
cout<<ordered_qty<<"\t\t"<<p.getProductPrice()*ordered_qty<<endl;
}
}試題七(15分)
閱讀下列說明、圖以及Java程序,將應(yīng)填入__(n)__處的字句寫在答題紙的相應(yīng)欄內(nèi)。
[說明]
某訂單管理系統(tǒng)的部分UML類圖如圖7-1所示
圖7-1訂單管理系統(tǒng)的部分類圖圖7-1中,Product表達(dá)產(chǎn)品,ProductList表達(dá)所銷售產(chǎn)品的列表,Order表達(dá)產(chǎn)品訂單,0rderltem表達(dá)產(chǎn)品訂單中的一個(gè)條目,OrderList表達(dá)訂單列表,SalesSystem提供訂單管理系統(tǒng)的操作接口。各個(gè)類的部分屬性和方法說明如表7-1所示。表7-1類成員說明ProductListArrayList(Product)productsProductStringStringcode產(chǎn)品編號(hào)description產(chǎn)品描述doubleprice產(chǎn)品單價(jià)Booleanequals(Objectobject)若兩個(gè)產(chǎn)品相同則返回true,否則返回falseOrderltemProductproduct訂單項(xiàng)中的產(chǎn)品intquantity產(chǎn)品的訂購數(shù)量ProductgetProduct()獲取訂單項(xiàng)中的產(chǎn)品OrderArrayList(Orderlten)items訂單中包含的訂單項(xiàng)OrderListArrayList(Order)orders訂單voidaddOrder(0rderorder)向訂單列表中添加新訂單intgetNumberOfOrders()獲取訂單列表中的訂單總數(shù)SalesSystemProductListcatalog產(chǎn)品目錄OrderListsales訂單列表voidstatistic()依次記錄產(chǎn)品目錄中每個(gè)產(chǎn)品的訂購總量,并打印出每個(gè)產(chǎn)品的編號(hào)、說明、訂購總量和訂購金額可以使用類java.util。ArrayList<E>來實(shí)現(xiàn)對象的聚集關(guān)系,如圖7-1中OrderList與Order之間的聚集關(guān)系。
for-each循環(huán)提供了一種遍歷對象集合的簡樸方法。在for-each循環(huán)中,可以指定需要遍歷的對象集合以及用來接受集合中每個(gè)元素的變量,其語法如下;
for(用來接受集合中元素的變量:需要遍歷的對象集合)
假如要使用for-each循環(huán)來遍歷對象集合,那么包含該對象集合的類必須實(shí)現(xiàn)接口java.util.Iterable<T>。
Java程序7-1和Java程序7-2分別給出了類OrderList和方法statistic的Java代碼。[Java程序7-1]
importjava.util.*;
publicclassOrderList__(1)__{
privateArrayList<Order>orders;
publicOrderListO{
this.orders=newArrayList(Order)0;
}
publicvoidaddOrder(Orderorder){
this.orders,add(order);
}
publicIterator<Order>iteratorO{
return__(2)__;
}
publicintgetNunberOfOrders(){
returnthis.orders,size();
}
}[Java程序7-2]
importjava.util.*;
publicclassSalesSystem{
privateProductListcatalog;
privateOrderListsales;
privatestaticPrintWriterstdOut=newPrintWriter(System.out,true);
publicvoidstatistic(){
for(Productproduct:__(3)_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 碼頭貨物運(yùn)輸合同
- 工程熱力學(xué)模擬試答題
- 企業(yè)內(nèi)部年度財(cái)務(wù)分析報(bào)告
- 寓言故事烏鴉喝水的啟示讀后感
- 企業(yè)知識(shí)產(chǎn)權(quán)保護(hù)及維權(quán)服務(wù)協(xié)議
- 年度目標(biāo)達(dá)成報(bào)告
- 大數(shù)據(jù)挖掘在輿情監(jiān)控中的應(yīng)用實(shí)踐指南
- 如何正確使用辦公軟件提高效率
- 太陽能光伏發(fā)電系統(tǒng)安裝合同
- 人與自然紀(jì)錄片評析和諧共生的啟示
- 八年級語文上冊第六單元作業(yè)設(shè)計(jì) 品格與志趣
- 鐵道游擊隊(duì)測試題6.1總1文檔資料
- 電機(jī)與電氣控制技術(shù)(第2版)全套完整教學(xué)課件
- 掘進(jìn)機(jī)液壓培訓(xùn)課件
- 農(nóng)產(chǎn)品質(zhì)量安全風(fēng)險(xiǎn)防范措施
- 麻醉科臨床技術(shù)操作規(guī)范2022版
- 奉賢東部分區(qū)單元(FX3)地質(zhì)災(zāi)害危險(xiǎn)性評估報(bào)告
- 現(xiàn)代企業(yè)管理專業(yè)實(shí)踐考核試題
- 支氣管鏡吸痰操作考核評分標(biāo)準(zhǔn)
- 2023年病歷書寫基本規(guī)范文
- 《中小學(xué)心理健康教育指導(dǎo)綱要(2012年修訂)》
評論
0/150
提交評論