亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        2010年軟件水平考試軟件設(shè)計師模擬試題(3)

        字號:

        2010年軟件水平考試軟件設(shè)計師模擬試題(3)

            試題四
            閱讀下列說明以及圖3-1 和圖3-2,回答問題1、問題2 和問題3,將解答填入答題紙的
            對應(yīng)欄內(nèi)。
            [說明]
            某電話公司決定開發(fā)一個管理所有客戶信息的交互式網(wǎng)絡(luò)系統(tǒng)。系統(tǒng)的功能如下:
            1.瀏覽客戶信息:任何使用Internet 的網(wǎng)絡(luò)用戶都可以瀏覽電話公司所有的客戶信息(包
            括姓名、住址、電話號碼等)。
            2.登錄:電話公司授予每個客戶一個帳號。擁有授權(quán)帳號的客戶,可以使用系統(tǒng)提供
            的頁面設(shè)置個人密碼,并使用該帳號和密碼向系統(tǒng)注冊。
            3.修改個.人信息:客戶向系統(tǒng)注冊后,可以發(fā)送電子郵件或者使用系統(tǒng)提供的頁面,
            對個人信息進(jìn)行修改。
            4.刪除客戶信息:只有公司的管理人員才能刪除不再接受公司服務(wù)的客戶的信息。
            系統(tǒng)采用面向?qū)ο蠓椒ㄟM(jìn)行開發(fā),在開發(fā)過程中認(rèn)定出的類如下表所示:
            編號 類名 描述
            1 InternetClient 網(wǎng)絡(luò)用戶
            2 CustomerList 客戶信息表,記錄公司所有客戶的信息
            3 Customer 客戶信息,記錄單個客戶的信息
            4 CompanyCustomer 公司客戶
            5 InternalClient 公司的管理人員
            [圖3-1]
            [問題1]
            在需求分析階段,采用UML 的用例圖(use case diagram)描述系統(tǒng)功能需求,如圖3-1
            所示。請指出圖中的A、B、C 和D 分別是哪個用例?
            [問題2]
            在 UML 中,重復(fù)度(Multiplicity)定義了某個類的一個實例可以與另一個類的多少個
            實例相關(guān)聯(lián)。通常把它寫成一個表示取值范圍的表達(dá)式或者一個具體的值。例如圖 3-2 中
            的類 InternetClient 和CustomerList,InternetClient 端的“0..*”表示:一個 Custo~erList 的實
            例可以與 0 個或多個 InternetClient 的實例相關(guān)聯(lián);CustomerList 端的“1”表示:一個
            InternetClient 的實例只能與一個CustomerList 的實例相關(guān)。
            請指出圖3-2 中(1)到(4)處的重復(fù)度分別為多少?
            [問題3]
            類通常不會單獨存在,因此當(dāng)對系統(tǒng)建模時,不僅要識別出類,還必須對類之間的相
            互關(guān)系建模。在面向?qū)ο蠼V?,提供了四種關(guān)系:依賴(dependency)、概括(generalization)、
            關(guān)聯(lián)(aassociation)和聚集(aggregation)。請分別說明這四種關(guān)系的含義,并說明關(guān)聯(lián)和聚集之
            間的主要區(qū)別。
            試題五
            閱讀下列程序說明和 C 代碼,將應(yīng)填人 __(n)__ 處的字句寫在答卷的對應(yīng)欄內(nèi)。
            [程序 6 說明]
            設(shè)某城市有 n 個車站,并有 m 條公交線路連接這些車站,設(shè)這些公交車都是單向
            的,這 n 個車站被順序編號為 0 至 n-1 。本程序,輸入該城市的公交線路數(shù)、車站個
            數(shù),以及各公交線路上的各站編號,求得從站 0 出發(fā)乘公交車至站 n-1 的最少換車次數(shù)。
            程序利用輸入信息構(gòu)建一張有向圖 G (用鄰接矩陣 g 表示),有向圖的頂點是車站,
            若有某條公交線路經(jīng) i 站能到達(dá) j 站,就在頂點 i 到頂點 j 之間設(shè)置一條權(quán)為 1 的有向
            邊。如是這樣,從站點 x 至站點 y 的最少上車次數(shù)便對應(yīng)圖 G 中從點 x 至點 y 的
            最短路徑長度。而程序要求的換車次數(shù)就是上車次數(shù)減 1 。
            [程序6]
            #include
            #define M 20
            #define N 50
            int a[N+l]; /*用于存放一條線路上的各站編號*/
            int g[N][N]; /*存儲對應(yīng)的鄰接矩陣*/
            int dist[N]; /*存儲站 0 到各站的最短路徑*/
            int m, n;
            void buildG( )
            { int i, j, k, sc, dd;
            printf ("輸入公交線路數(shù),公交站數(shù)\n");
            scanf ("%d%d", &m, &n);
            for( i = O; i < n; i++) /* 鄰接矩陣清0 */
            for(j = O; j < n; j++) g[i][j] = O;
            for( i = O; i < m; i++) {
            printf (" 沿第 %d 條公交車線路前進(jìn)方向的各站編號
            ( O <= 編號 <= %d, -1 結(jié)束):\n", i+l, n-1 );
            sc = O; /* 當(dāng)前線路站計數(shù)器 */
            while (1) {
            scanf ("%d", &dd);
            if (dd == -1) break;
            if (ad >= 0 && dd < n) ___(1)___
            }
            a[sc] = -1;
            for(k = 1; a[k] >= O; k++) /* 處理第 i+l 條公交線路 */
            for (j = 0; j < k; j++)
            g __(2)__ = 1;
            }}
            int minLen( )
            { int j, k;
            for(j = O; j < n; j++) dist[j] = g[O][j];
            dist[O] = 1;
            do {
            for(k = -1, j = 0 ; j < n; j++) /* 找下一個最少上車次數(shù)的站*/
            if (dist[j] > 0 && (k == -1 || dist[j] < dist[k])) k = j;
            if (k < 0 || k == n-l) break;
            dist[k] = -dist[k]; /* 設(shè)置 k 站已求得上車次數(shù)的標(biāo)記 */
            for(j = 1; j < n; j++) /* 調(diào)整經(jīng)過 k 站能到達(dá)的其余各站的上車次數(shù) */
            if ( __(3)__ && (dist[j] == 0 || -dist[k] + 1 < dist[j] ) )
            dist[j] = __(4)__ ;
            } while (1);
            j = dist [n-l];
            return __(5)__ ;
            }
            void main ( )
            { int t;
            buildG ( );
            if ((t = minLen()) < O) printf ("無解 ! \n"),
            else printf ("從 0 號站到 %d 站需換車 %d 次\n , n-i, t);
            }
            2010年軟件設(shè)計師模擬試題(三)
            答案部分
            【上午試題】
            1)B 2)C 3)B 4)B 5)D 6)C 7)C 8)D 9)A 10)A 11)B
            12)B 13)B 14)C 15)B 16)D 17)C 18)A 19)C 20)C 21)D
            22)A 23)D 24)D 25)D 26)A 27)D 28)B 29)B 30)C 31)C
            32)B 33)A 34)A 35)C 36)B 37)C 38)D 39)A 40)A 41)A
            42)D 43)C 44)A 45)C 46)B 47)D 48)A 49)B 50)A 51)A
            52)A 53)D 54)B 55)B 56)C 57)B 58)B 59)C 60)A 61)D
            62)C 63)C 64)B 65)A 66)A 67)C 68)B 69)B 70)D 71)B
            72)C 73)A 74)B 75)D
            【下午試題】
            試題一
            (1) 檢查發(fā)貨單中非法銷售代號、非法商品代號、數(shù)量*單價≠金額等錯誤。
            答“檢查發(fā)貨單的合法性”得 2 分
            (2) “刪除發(fā)貨文件中已做收款標(biāo)記的所有記錄”
            或“將未收到款的記錄重新組成新發(fā)貨文件”。
            (3) “刪除收款文件中的所有記錄”
            或“刪除已收到款的記錄”
            或“對收款文件初始化”。
            (4) 從收款文件到處理 7 的連線改成從日收款分類文件到處理 7 的連線。
            試題二:
            [問題1]
            N+1→N ② L-I+1→J ③ L N/10,J」 ④ L→LS ⑤ (I-LS-N1*M) ⑥ L N/10↑J」×10
            [問題2]
            流程圖b 的處理效率比流程圖a 高;流程圖b 的算法比流程圖a 復(fù)雜。
            試題三
            [問題1]
            Customers(cid,cname,adderss,cardnum),主碼:cid
            orders(Ordernum,Orderdate,cid) 主碼:Ordernum ;外碼:cid
            Books
            0rderlist(bid,ordernum,qty,ship_date) 其中bid 和ordernum 是主碼也是外碼
            注:以上四個關(guān)系模式和每個模式中的屬性可按任意次序書寫。
            [問題2]
            (1)PRIMARY KEY(cid)
            (2)UNIQUE(cardnum)
            注;(1)和(2)的次序可以顛倒。
            [問題3]
            (3)not in
            (5)C.ordernum
            試題四
            [問題1]
            A:瀏覽客戶信息 B:修改個人信息 C:登錄 D:刪除客戶信息
            [問題2]
            (1)1 (2)0..* (3)0..1 (4)0..1
            [問題3]
            (1)4 種關(guān)系的含義:
            依賴表示類之間的使用關(guān)系。
            概括表示一般類和特殊類之間的關(guān)系。
            關(guān)聯(lián)和聚集都表示實例之間的結(jié)構(gòu)關(guān)系。
            (2)關(guān)聯(lián)和聚集的區(qū)別:
            關(guān)聯(lián)指明一個類的對象與另一類的對象間的聯(lián)系:兩個類之間的關(guān)聯(lián)表示了兩個同等地
            位類之間的結(jié)構(gòu)關(guān)系,這兩個類在概念上是同級別的。
            聚集是一種特殊的關(guān)聯(lián),它表示整體/部分關(guān)系。
            試題五:
            (1) a[sc++] = dd
            (2) a[[j]] [a[k]]
            (3) dist[j] >= 0 && g[k][j] == 1
            (4) -dist [k] + 1
            (5) k < 0 ? -1 : j - 1