亚洲国产91高清,日韩欧美一区二区三区不卡在线,在线看国产国语三级在线看,AV片免费观看网址

<dfn id="uiowy"></dfn>
<rt id="uiowy"></rt>
  • <dl id="uiowy"><abbr id="uiowy"></abbr></dl>
  • <abbr id="uiowy"><kbd id="uiowy"></kbd></abbr>
    <dfn id="uiowy"><source id="uiowy"></source></dfn>

    2006年5月軟件設(shè)計(jì)師下午試題[5]

    軟件設(shè)計(jì)師 責(zé)任編輯:qingque 2008-08-06

    添加老師微信

    備考咨詢

    加我微信

    摘要:試題六(15分)閱讀下列說明、圖和C++代碼,將應(yīng)填入(n)處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)?!菊f明】某訂單管理系統(tǒng)的部分UML類圖如圖6-1所示。圖6-1中,Product表示產(chǎn)品,ProductList表示產(chǎn)品目錄,Order表示產(chǎn)品訂單,Orderltem表示產(chǎn)品訂單中的一個(gè)條目,OrderList表示訂單列表,SalesSystem提供訂單管理系統(tǒng)的操作接口。請(qǐng)完善類Or

    試題六(15分)
    閱讀下列說明、圖和C++代碼,將應(yīng)填入 (n) 處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)。
    【說明】
    某訂單管理系統(tǒng)的部分UML類圖如圖6-1所示。 
     
    圖6-1中,Product表示產(chǎn)品,ProductList表示產(chǎn)品目錄,Order表示產(chǎn)品訂單,
    Orderltem表示產(chǎn)品訂單中的一個(gè)條目,OrderList表示訂單列表,SalesSystem提供訂單
    管理系統(tǒng)的操作接口。
    請(qǐng)完善類Order的成員函數(shù)getOrderedAmount()和類SalesSystem的statistic()方
    法,各個(gè)類的屬性及部分方法定義參見下面的C++代碼。
    【C++代碼】
    class Product {//產(chǎn)品類
    private:
    string pid;//產(chǎn)品識(shí)別碼
    string description;//產(chǎn)品描述
    double price; //產(chǎn)品單價(jià)
    public:
    void setProductPrice(double price); //設(shè)置產(chǎn)品單價(jià)
    string getProductld(); //獲取產(chǎn)品識(shí)別碼
    string getProductDescription(); //獲取產(chǎn)品描述
    double getProductPrice();//獲取產(chǎn)品單價(jià)
    //其他成員省略
    };

    class ProductList{//產(chǎn)品列表類
    private:
    vector <Product> products;
    public:
    ProductList();
    Product getProductByIndex(int i);//獲得產(chǎn)品列表中的第i件產(chǎn)品
    void addProduct(Product t); //在產(chǎn)品列表中加入一件產(chǎn)品
    Product * getProductByID(string pid); //獲得識(shí)別碼為pid的產(chǎn)品指針
    unsigned int getProductAmount();//獲得產(chǎn)品列表中的產(chǎn)品數(shù)量
    };

    class OrderItem { //訂單條目類
    private:
    Product *productPtr;//指向被定購(gòu)產(chǎn)品的指針
    int quantity;//定購(gòu)數(shù)量
    public:
    OrderItem (Product *, int);
    Product * getProductptr();//獲取指向被定購(gòu)產(chǎn)品的指針
    int getQuantity (); //獲取被定購(gòu)產(chǎn)品的數(shù)量
    };

    class Order { //訂單類
    private:
    unsigned int orderid;//訂單識(shí)別號(hào)
    vector<OrderItem>items; //訂單內(nèi)容(訂單項(xiàng))
    public:
    Order(unsigned int orderid);
    //獲得識(shí)別碼為tid的產(chǎn)品在當(dāng)前訂單中被定購(gòu)的數(shù)量
    int getOrderedAmount(string tid);
    void additem(Product *productPtr,unsigned int n);//在訂單中增加—個(gè)訂單項(xiàng)
    //其他成員省略
    };

    class OrderList{ //訂單列表類
    prtvate:
    vector<Order> orders;
    public:
    OrderList();
    //Begin()返回指向訂單列表第一個(gè)元素的迭代器(指針)
    virtual vector<Order>::iterator OrderList::Begin();
    //End()返回指向訂單列表最后一個(gè)元素之后的迭代器(指向一個(gè)不存在的元素)
    virtual vector<Order>::iterator OrderList::End();
    void addOrder(Order t);//在訂單列表中加入一份訂單
    //其他成員省略
    };

    class SalesSystem{
    private:
    ProductList catalog∶ //產(chǎn)品目錄
    OrderList sales; //訂單列表
    public:
    SalesSystem();
    void statistic();//統(tǒng)計(jì)所有產(chǎn)品的定購(gòu)情況
    //其他成員省略
    };

    //在訂單中查找識(shí)別碼為tid的產(chǎn)品的定購(gòu)數(shù)量,若該產(chǎn)品沒有被定購(gòu),則返回0
    int Order::getOrderedAmount(string tid)
    { for (int k = 0; k < items.size(); k++){
     if ((1)  == tid)
     return  (2) ;
    }
    return 0;
    }

     

    //方法statistic()依次統(tǒng)計(jì)產(chǎn)品目錄中每個(gè)產(chǎn)品的訂購(gòu)總量,并打印輸出
    //每個(gè)產(chǎn)品的識(shí)別碼、描述、訂購(gòu)總量和訂購(gòu)金額
    void SalesSystem::statistic()
    {unsigned int k, t, ordered_qty = 0;
    vector<Order>::iterator tt; Product p;
    cout<<"產(chǎn)品識(shí)別碼\t描述\t\t定購(gòu)數(shù)量\t金額"<<endl;

    for(k=0; k<catalog.getProductAtnount(); k++){//遍歷產(chǎn)品列表
     p =(3) ; //從產(chǎn)品列表取得一件產(chǎn)品信息存入變量p
     ordered_qty = 0;
     //通過迭代器變量it遍歷訂單列表中的每一份訂單
     for(it = sales.Begin(); (4) ; it++){
    //根據(jù)產(chǎn)品識(shí)別碼獲得產(chǎn)品p在當(dāng)前訂單中被定購(gòu)的數(shù)量
    t =?。?)(p.getProductId());
    ordered_qty += t;
     }
     cout<<p.getProductId()<<"\t\t"<<p.getProductDescription()<<"\t\t";
     cout<<ordered_qty<<"\t\t"<<p.getProductPrice() * ordered_qty<<endl;
    }
    }


    [答案討論]

    [1]  [2]  [3]  [4]  [5]  [6]  

    溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請(qǐng)考生以權(quán)威部門公布的內(nèi)容為準(zhǔn)!

    軟考備考資料免費(fèi)領(lǐng)取

    去領(lǐng)取

    !
    咨詢?cè)诰€老師!