摘要:2015年下半年軟件設(shè)計(jì)師考試真題下午卷 試題五(15分)閱讀下列說(shuō)明和C++代碼,將應(yīng)填入 (n) 處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)。
>>>>>>>>>> 點(diǎn)擊進(jìn)入2016年軟件設(shè)計(jì)師網(wǎng)絡(luò)課堂課
>>>>>>>>>>點(diǎn)擊進(jìn)入軟件設(shè)計(jì)師歷年真題題庫(kù)
>>>>>>>>>>點(diǎn)擊進(jìn)入2016年軟件設(shè)計(jì)師考試指南
2015年下半年軟件設(shè)計(jì)師考試真題下午卷
試題五(15分)
閱讀下列說(shuō)明和C++代碼,將應(yīng)填入 (n) 處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)。
【說(shuō)明】
某大型購(gòu)物中心欲開發(fā)一套收銀軟件,要求其能夠支持購(gòu)物中心在不同時(shí)期推出的各 種促銷活動(dòng),如打折、返利(例如,滿3 00返1 00)等等?,F(xiàn)采用策略( Strategy)模式實(shí)現(xiàn)該要求,得到如圖5-1所示的類圖。
【C++代碼】
#include <iostream> Using namespace std;
enum TYPE{NORMAL, CASH_DISCOUNT, CASH_RETURN}; class CashSup er{ public:
(1)
};
class CashNormal : public CashSuper { //正常收費(fèi)子類
public:
double acceptCash(double money) { retum money; }
};
class CashDiscount : public CashSuper {
private:
double moneyDiscount; // 折扣率
public:
CashDiscount(double discount) { moneyDiscount= discount; }
double acceptCash(double money) { retum money * moneyDiscount; }
};
class CashRetum : public CashSuper { // 滿額返利
private: double moneyCondition; // 滿額數(shù)額
double moneyReturn; // 返利數(shù)額
public:
CashRetnm(double;m otieyCondition, double moneyReturn) {
this=>moneyCondition - moneyCondition;
this=>m oneyRetumF moneyRetum;
} .
double acceptCash(double money) {
double result = money;
if(money>=moneyCondition)
result = money - (int)(mon ey l mon eyCondition ) * moneyRetum;
Return result
}
};
class CashContext {
private:
CashSuper *cs;
public:
CashContext(inttype) {
switch(type) {
case NORMAL: //正常收費(fèi)
(2)
case CASH;:RETURN //滿30返100
(3)
Break;
case CASH DISCOUNT: //打八折
(4)
break;
}
}
double GetResult(double money) {
(5)
}
};
//此處略去main()函數(shù)
相關(guān)鏈接:
軟件設(shè)計(jì)師考試下午知識(shí)點(diǎn)精講與考前必練
軟考備考資料免費(fèi)領(lǐng)取
去領(lǐng)取
共收錄117.93萬(wàn)道題
已有25.02萬(wàn)小伙伴參與做題