av免费网址-青青青手机在线视频-√天堂资源中文-免费在线观看av网站-午夜dj视频在线观看完整版1-老少配老妇老熟女中文普通话-亚洲精品久久久久成人2007-国产精品边做奶水狂喷-另类综合小说-精品无码成人片一区二区-超碰超在线-国产对白刺激视频-亚洲天堂网在线观看-国产精品国产精品偷麻豆-国产精品美女久久久久久福利-国产露脸国语对白在线-91人人爽久久涩噜噜噜-亚洲欧美久久-久久综合色网-特级黄色 一级播放

2019上半年軟考程序員下午真題(六)

程序員 責任編輯:胡媛 2019-05-29

添加老師微信

備考咨詢

加我微信

摘要:希賽網(wǎng)軟考頻道小編為大家整理了2019上半年軟考程序員下午真題第六部分,供大家參考。

6、閱讀下列說明和C++代碼,將應填入(n)處的字句寫在答題紙的對應欄內。

【說明】

現(xiàn)如今線下支付系統(tǒng)可以使用現(xiàn)金(Cash)、移動支付、銀行卡(Card)(信用卡 (CreditCard)和儲蓄卡(DebitCard))等多種支付方式(PaymentMethod)對物品(Item) 賬單(Bill)進行支付。圖6-1是某支付系統(tǒng)的簡略類圖。

1.jpg

問題內容:

【 C++代碼 】

#include <iostream>

#include〈vector〉

#include〈string〉

using namespace std;

class PaymentMethod {

public: virtual void pay(int cents)=0;

};

// Cash、DebitCard和Item實現(xiàn)略,Item中getPrice( )獲取當前物品對象的價格

class Card : public PaymentMethod {

private: string name, num;

public:

Card(string name, string num) {this->name = name; this->num = num; }

string toString( ) {

return this->getType( ) + " card[name = "+ name + ",num = " + num + "]"; )

}

void pay(int cents) {

cout<< "Payed " <<cents << " cents using " <<toString( ) <<end1;

this->executeTransaction(cents);

}

protected:

virtual string getType( )=0;

virtual void     (1)      =0:

};

class CreditCard      (2)        {

public:

CreditCard(stringname, stringnum)      (3)        {

}

protected:

string getType( ) { return " CREDIT " ; }

void executeTransaction(int cents) {

cout<<cents << " paid using " <<getType( )<< " Card." << end1;

}

};

class Bill {//包含所有購買商品的賬單

private:

vector< Item*> items; //包含物品的 vector

public:

void add(Item* item){ items.push_back(item); }

int getTotalPrice( ){ /*計算所有item的總價格,代碼略*/}

void pay(PaymentMethod* paymentMethod) {//用指定的支付方式完成支付

(4)        (getTotalPrice( ));

}

};

class PaymentSystem{

public:

void pay( ) {

Bill* bill = new Bill( );

Item* item1= new Item"1234",10); Item* item2 = new Item("5678",40);

bill->add(item1); bill->add(item2); //將物品添加到賬單中

(5)        (new CreditCard("LI SI", "98765432101")); //信用卡支付

}

};

Intmain( ) {

(6)        = new PaymentSystem( );

payment->pay( );

return 0;

}


相關推薦:2019上半年程序員下午真題及答案

在線題庫:程序員歷年真題自測估分

更多資料
更多課程
更多真題
溫馨提示:因考試政策、內容不斷變化與調整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請考生以權威部門公布的內容為準!

軟考備考資料免費領取

去領取

!
咨詢在線老師!