2015 年上半年軟件設(shè)計師考試下午真題_第1頁
2015 年上半年軟件設(shè)計師考試下午真題_第2頁
2015 年上半年軟件設(shè)計師考試下午真題_第3頁
2015 年上半年軟件設(shè)計師考試下午真題_第4頁
2015 年上半年軟件設(shè)計師考試下午真題_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2015年上半年軟件設(shè)計師考試下午真題(參考答案)●閱讀下列說明和圖,回答問題1至問題4,將解答填入答題紙的對應(yīng)欄內(nèi)?!菊f明】某大學(xué)為進一步推進無紙化考試,欲開發(fā)一考試系統(tǒng)。系統(tǒng)管理員能夠創(chuàng)建包括專業(yè)方向、課程編號、任課教師等相關(guān)考試基礎(chǔ)信息,教師和學(xué)生進行考試相關(guān)的工作。系統(tǒng)與考試有關(guān)的主要功能如下??荚囋O(shè)置。教師制定試題(題目和答案),制定考試說明、考試時間和提醒時間等考試信息,錄入?yún)⒓涌荚嚨膶W(xué)生信息,并分別進行存儲。顯示并接收解答。根據(jù)教師設(shè)定的考試信息,在考試有效時間內(nèi)向?qū)W生顯示考試說明和題目,根據(jù)設(shè)定的考試提醒時間進行提醒,并接收學(xué)生的解答。處理解答。根據(jù)答案對接收到的解答數(shù)據(jù)進行處理,然后將解答結(jié)果進行存儲。生成成績報告。根據(jù)解答結(jié)果生成學(xué)生個人成績報告,供學(xué)生查看。生成成績單。對解答結(jié)果進行核算后生成課程成績單供教師查看。發(fā)送通知。根據(jù)成績報告數(shù)據(jù),創(chuàng)建通知數(shù)據(jù)并將通知發(fā)送給學(xué)生;根據(jù)成績單數(shù)據(jù),創(chuàng)建通知數(shù)據(jù)并將通知發(fā)送給教師?,F(xiàn)采用結(jié)構(gòu)化方法對考試系統(tǒng)進行分析與設(shè)計,獲得如圖1-1所示的上下文數(shù)據(jù)流圖和圖1-20層數(shù)據(jù)流圖。1】(2分)使用說明中的詞語,繪出圖1-1中的實體E1~E2的名稱。2】(4分)使用說明中的詞語,給出圖1-2中的數(shù)據(jù)存儲D1~D4的名稱。3】(4分)根據(jù)說明和圖中詞語,補充圖1-2中缺失的數(shù)據(jù)流及其起點和終點。4】(5分)圖1-2所示的數(shù)據(jù)流圖中,功能(6)發(fā)送通知包含創(chuàng)建通知并發(fā)送給學(xué)生或老師。請分解圖1-2中加工(6),將分解出的加工和數(shù)據(jù)流填入答題紙的對應(yīng)欄內(nèi)。(注:數(shù)據(jù)流的起點和終點須使用加工的名稱描述)●閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)?!菊f明】某省針對每年舉行的足球聯(lián)賽,擬開發(fā)一套信息管理系統(tǒng),以方便管理球隊、球員、主教練、主裁判、比賽等信息?!拘枨蠓治觥肯到y(tǒng)需要維護球隊、球員、主教練、主裁判、比賽等信息。球隊信息主要包括:球隊編號、名稱、成立時間、人數(shù)、主場地址、球隊主教練。球員信息主要包括:姓名、身份證號、出生日期、身高、家庭住址。主教練信息主要包括:姓名、身份證號、出生日期、資格證書號、級別。主裁判信息主要包括:姓名、身份證號、出生日期、資格證書號、獲取證書時間、級別。每支球隊有一名主教練和若干名球員。一名主教練只能受聘于一支球隊,一名球員只能效力于一支球隊。每支球隊都有自己的唯一主場場地,且場地不能共用。足球聯(lián)賽采用主客場循環(huán)制,一周進行一輪比賽,一輪的所有比賽同時進行。一場比賽有兩支球隊參加,一支球隊作為主隊身份、另一支作為客隊身份參與比賽。一場比賽只能有一名主裁判,每場比賽有唯一的比賽編碼,每場比賽都記錄比分和日期?!靖拍罱Y(jié)構(gòu)設(shè)計】根據(jù)需求分析階段的信息,設(shè)計的實體聯(lián)系圖(不完整)如圖2-1所示?!具壿嫿Y(jié)構(gòu)設(shè)計】

2-1實體聯(lián)系圖根據(jù)概念結(jié)構(gòu)設(shè)計階段完成的實體聯(lián)系圖,得出如下關(guān)系模式(不完整):球隊(球隊編號,名稱,成立時間,人數(shù),主場地址)球員(姓名,身份證號,出生日期,身高,家庭住址,(1))主教練(姓名,身份證號,出生日期,資格證書號,級別,(2))主裁判(姓名,身份證號,出生日期,資格證書號,獲取證書時間,級別)比賽(比賽編碼,主隊編號,客隊編號,主裁判身份證號,比分,日期)1】(6分)2-1中的聯(lián)系和聯(lián)系的類型。圖2-1中的聯(lián)系“比賽”應(yīng)具有的屬性是哪些?2】(4分)根據(jù)圖2-1,將邏輯結(jié)構(gòu)設(shè)計階段生成的關(guān)系模式中的空(1)~(2)補充完整。3】(5分)現(xiàn)在系統(tǒng)要增加贊助商信息,贊助商信息主要包括贊助商名稱和贊助商編號。贊助商可以贊助某支球隊,一支球隊只能有一個贊助商,但贊助商可以贊助多支球隊。贊助商也可以單獨贊助某些球員,一名球員可以為多個贊助商代言。請根據(jù)該要2-1進行修改,畫出修改后的實體間聯(lián)系和聯(lián)系的類型?!耖喿x下列說明和圖,回答問題1至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)?!菊f明】某物品拍賣網(wǎng)站為參與者提供物品拍賣平臺,組織拍賣過程,提供在線或線下交易服務(wù)。網(wǎng)站主要功能描述如下:拍賣參與者分為個人參與者和團體參與者兩種。不同的團體也可以組成新的團體參與拍賣活動。網(wǎng)站記錄每個參與者的名稱。一次拍賣中,參與者或者是買方,或者是賣方。一次拍賣只拍出來自一個賣方的一件拍賣品;多個買方可以出價:賣方接受其中一個出價作為成交價,拍賣過程結(jié)束。在拍賣結(jié)算階段,買賣雙方可以選擇兩種成交方式:線下成交,買賣雙方在事先約定好的成交地點,當面完成物價款的支付和拍賣品的交付;在線成交,買方通過網(wǎng)上支付平臺支付物價款,拍賣品由賣方通過快遞郵寄給買方。一次拍賣過程的基本事件流描述如下:賣方在網(wǎng)站上發(fā)起一次拍賣,并設(shè)置本次拍賣的起拍價。確定拍賣標的以及拍賣標的保留價(若在拍賣時間結(jié)束時,所有出價均低于拍賣標的保留價,則本次拍賣失?。?。在網(wǎng)站上發(fā)布本次拍賣品的介紹。買方參與拍賣,給出竟拍價。賣方選擇接受一個竟拍價作為成交價,結(jié)束拍賣。系統(tǒng)記錄拍賣成交價,進入拍賣結(jié)算階段。賣方和買方協(xié)商拍賣品成交方式,并完成成交現(xiàn)采用面向?qū)ο蠓椒▽ο到y(tǒng)進行分析與設(shè)計,得到如表3-1所示的類列表以及如圖3-1所示的類圖,類中關(guān)鍵屬性與方法如表3-2所示。1】(7分)根據(jù)說明中的描述,給出圖3-1中(1)~(7)所對應(yīng)的類名(類名使用表3-1中給出的序號)。2】(5分)根據(jù)說明中的描述,確定表3-2中的屬性/方法分別屬于哪個類(類名、方法/屬性3-1、3-2中給出的序號)。3】(3分)在圖3-1采用了何種設(shè)計模式?以100字以內(nèi)文字說明采用這種設(shè)計模式的原因。閱讀下列說明和C代碼,回答問題1至問題3,將解答寫在答題紙的對應(yīng)欄內(nèi)?!菊f明】 n-皇后問題是在n行n列的棋盤上放置n個皇后,使得皇后彼此之間不受攻擊,其規(guī)則是任意兩個皇后不在同一行、同一列和相同的對角線上。 擬采用以下思路解決n-皇后問題:第i個皇后放在第i行。從第一個皇后開始,對每個皇后,從其對應(yīng)行(第i個皇后對應(yīng)第i行)的第一列開始嘗試放置,若可以放置,確定該位置,考慮下一個皇后;若與之前的皇后沖突,則考慮下一列;若超出最后一列,則重新確定上一個皇后的位置。重復(fù)該過程,直到找到所有的放置方案。【C代碼】 下面是算法的C語言實現(xiàn)。(1)常量和變量說明 pos:一維數(shù)組,pos[i]表示第i個皇后放置在第i行的具體位置 count:統(tǒng)計放置方案數(shù) i,j,k:變量N:皇后數(shù)(2)C程序#include<stdio.h>#include<math.h>#defineN4/*判斷第k個皇后目前放置位置是否與前面的皇后沖突*/inisplace(intpos[],intk){ inti; for(i=1;i<k;i++){ if((1)||fabs(i-k)══fabs(pos[i]-pos[k])){ return(4); } } return1;}intmain(5) { inti,j,count=1; intpos[N+1]; //初始化位置 for(i=1;i<=N;i++){ pos[i]=0; } (2); while(j>=1){ pos[j]=pos[j]+1; 擺放第i個皇后*/ while(pos[j]<=N&&(3)_){ pos[j]=pos[j]+1; } /*得到一個擺放方案*/ if(pos[j]<=N&&j══N){ 方案%d:",count++); for(i=1;i<=N;i++){ printf("%d",pos[i]); } printf("\n"); } 皇后*/ if(pos[j]<=N&&(4)){ j=j+1; }else{//返回考慮上一個皇后 pos[j]=0; (5); } }return1;}1】(10分)根據(jù)以上說明和C代碼,填充C代碼中的空(1)~(5)。2】(2分)C代碼,算法采用了(6)設(shè)計策略。3】(3分)C代碼的輸出為:(7)。閱讀下列說明和C++代碼,將應(yīng)填入(n) 處的字句寫在答題紙的對應(yīng)欄內(nèi)。【說明】 某圖書管理系統(tǒng)中管理著兩種類型的文獻:圖書和論文?,F(xiàn)在要求統(tǒng)計所有館藏文獻的總頁碼(假設(shè)圖書館中有一本540頁的圖書和兩篇各25頁的論文,那么館藏文獻的總頁碼就是590頁)。采用Visitor(訪問者)模式實現(xiàn)該要求,得到如圖5-1所示的類圖。【C++代碼】

5-1Visitor模式類圖classLibraryVisitor;classLibraryItemInterface{public: (1) ;};classArticle:publicLibraryItemInterface{private:stringm_title; //論文名stringm_author; intm_start_page;intm_end_page;public:Article(stringp_author,stringp_title,intp_start_page,intp_end_page);intgetNumberOfPages();voidaccept(LibraryVisitor*visitor);};classBook:publicLibraryItemInterface{private:stringm_title;//書名stringm_author;//作者intm_pages;//頁數(shù)public:Book(stringp_author,stringp_title,intp_pages);intgetNumberOfPages();voidaccept(LibraryVisitor*visitor);};classLibraryVisitor{public: (2) ; (3) ;virtualvoidprintSum()=0;};classLibrarySumPrintVisitorpublicLibraryVisitor{ private:sum;public:LibrarySumPrintVisitor();voidvisit(Book*p_book);voidvisit(Article*p_article);voidprintSum();};//visitor.cppintArticle::getNumberOfPages(){retumm_end_m_start_page;}voidArticle::accept(LibraryVisitor*visitor){ (4) Book::Book(stringp_author,stringp_title,intp_pages){m_title=p_title;m_author=p_author;m_pages=p_pages;}intBook::getNumberOfPages(){ returnm_pages;}voidBook::accept(LibraryVisitor*visitor){ (5) ;}//其余代碼省略Java代碼,將應(yīng)填入(n)明】 某圖書管理系統(tǒng)中管理著兩種類型的文獻:圖書和論文。現(xiàn)在要求統(tǒng)計所有館藏文獻的總頁碼(假設(shè)圖書館中有一本540頁的圖書和兩篇各25頁的論文,那么館藏文獻的總頁碼就是590頁)。采用Visitor(訪問者)模式實現(xiàn)該要求,得到如圖6-1所示的類圖?!綣ava代碼】importjav

6-1Visitor模式類圖(6)A.util.*;interfaceLibraryVisitor{ (1) ; (2) ;printSum();}classLibrarySumPrintVisitorimplementsLibraryVisitor privateintsum=0;publicvoidvisit(Bookp_book){sum=sum+p_book.getNumberOfPages();}publicvoidvisit(Articlep_article){sum=sum+p_article.getNumberOfPages();}publicvoidprintSum(){System.out.println("SUM="+sum);}}interfaceLibraryItemInterface{ (3) ;}classArticleimplementsLibraryItemInterface{privateStringm_title; //論文名privateStringm_author; privateint m_start_page;privateint m_end_page;publicArticle(Stringp_author,Stringp_title,intp_start_page,intp_end_page){m_title=p_title;m_author=p_author;m_end_page=p_end_page;}publicintgetNumberOfPages(){returnm_end_m_start_page;}publicvoidaccept(LibraryVisitorVisitor){ (4) ;}}classBooki

溫馨提示

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

評論

0/150

提交評論