阅读以下说明和C++代码,将应填入( )处的字句写在答题纸的对栏内。 【说明】 现如今线下支付系统可以使用现金(Cash)、移动支付、银行卡( Card)(信用卡( Creditcard)和储蓄卡( Debitcard))等多种支付方式( PaymentMethod)对物品(tem)账单(Bill)进行支付。图 5-1 是某支付系统的略类图。#include #include (vector)#include(string)using namespace stdclass PaymentMethod tpublic: virtual void pay(int cents)=0;};//class、DebitCard和item实现略,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) { coutexecute Transaction(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)( couttems;∥包含物品的 vector Public: void add(Item" item items. push back(item):} int getTotalPrice ( ) { /*计算所有 item 的总价格,代码略”/} old pay( PaymentMethod* paymentMethod) {//用指定的支付方式完成支付(1) (getTotalPrice());}}Class PaymentSystemPublic:void pay( ){ Bill" bill new Bill( ); Item"item1= new Item"1234”, 10); Item*item2= new Item(“5678", 40); Bill_>add(item1);bill>add(tem2);∥将物品添加到账单中(2) ( new CreditCard("LI SI","98765432101”);∥信用卡支付}};Intmain( ) { (6) =new PaymentSystem( ); payment->pay ( );return 0;}

阅读以下说明和C++代码,将应填入( )处的字句写在答题纸的对栏内。 【说明】 现如今线下支付系统可以使用现金(Cash)、移动支付、银行卡( Card)(信用卡( Creditcard)和储蓄卡( Debitcard))等多种支付方式( PaymentMethod)对物品(tem)账单(Bill)进行支付。图 5-1 是某支付系统的略类图。

#include #include (vector)#include(string)using namespace stdclass PaymentMethod tpublic: virtual void pay(int cents)=0;};//class、DebitCard和item实现略,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 "<execute Transaction(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<tems;∥包含物品的 vector Public: void add(Item" item items. push back(item):} int getTotalPrice ( ) { /*计算所有 item 的总价格,代码略”/} old pay( PaymentMethod* paymentMethod) {//用指定的支付方式完成支付(1) (getTotalPrice());}}Class PaymentSystemPublic:void pay( ){ Bill" bill new Bill( ); Item"item1= new Item"1234”, 10); Item*item2= new Item(“5678", 40); Bill_>add(item1);bill>add(tem2);∥将物品添加到账单中(2) ( new CreditCard("LI SI","98765432101”);∥信用卡支付}};Intmain( ) { (6) =new PaymentSystem( ); payment->pay ( );return 0;}


参考解析

解析:(1)execute Transaction(int cents)(2):public Card(3): Card(name, num)(4)paymentMethod->pay(5)bill->pay(6)PaymentSystem*payment
【解析】

(1)定义虚方法,在子类中实现,包含 getType( ) 用和 execute Transaction(int cents)两个(2) creditcard 继承 card,所以这里填继承,用: public Card(3) Creditcard 内有构造方法,井将方法内的参数传递给父类的私有成员,填 Card(name, num)(4)利用paymentMethod对象调用pay方法,并传入具体价格getTotalPrice,这里填 paymentMethod>pay(5)调用bill的 pay 方法,bill->pay(6)通过 Paymentsystem* payment= new Paymentsystem 进行创建对象指针

相关考题:

()是货到付款的支付。 A.银行卡线下支付B.信用卡线下支付C.信用卡线上支付D.银行卡线上支付

阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。【说明】已知头指针分别为La和lb的有序单链表,其数据元素都是按值非递减排列。现要归并La和Lb得到单链表Lc,使得Lc中的元素按值非递减排列。程序流程图如下所示:

下列网上支付工具不适合进行小额支付的是() A.电子现金B.电子支票C.银行卡支付系统D.信用卡支付系统

阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。[说明]设学生某次考试的成绩按学号顺序逐行存放于某文件中,文件以单行句点“.”为结束符。下面的流程图读取该文件,统计出全部成绩中的最高分max和最低分min。

阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。[说明]下面的流程图用于计算一个英文句子中最长单词的长度(即单词中字母个数)MAX。假设该英文句子中只含字母、空格和句点“.”,其中句点表示结尾,空格之间连续的字母串称为单词。[流程图]

阅读下列说明和c++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关按钮,对应着一个不同的灯。利用该遥控器能够统一控制房间中该厂商所有品牌灯具的开关,现采用Command(命令)模式实现该遥控器的软件部分。Command模式的类图如图5-1所示。【c++代码】}

试题三(共 15 分)阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。

图2-1是基于软交换的网络分层模型。请将选项应填入(n)处的字句写在答题纸对应的解答栏内。

(a)智能网概念模型中分布功能平面模型如下图所示,请根据此图将应填入(n)处的 字句写在答题纸的对应栏内。

阅读下列说明和 C ++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某软件公司欲开发一款汽车竞速类游戏,需要模拟长轮胎和短轮胎急刹车时在路面上留 下的不同痕迹,并考虑后续能模拟更多种轮胎急刹车时的痕迹。现采用策略(Strategy)设计模式来实现该需求,所设计的类图如图 6-1 所示。【C++ 代码】#includeusing namespace std;class BrakeBehavior{public:(1) ; /*其余代码省略*/};class LongWheelBrake : public BrakeBehavior{public:void stop(){cout

阅读以下C代码,回答问题(1)~(5),将解答填入答题纸的对应栏内。【说明】以下java代码实现一个简单乐器系统,音乐类(Music)可以使用各类乐器(Instrument)进行演奏和调音等操作。对部分乐器进行建模,其类图如题5-1所示,包括:乐器(Instrument)、打击乐器(Percussion)、弦乐器(Stringed)、管乐器(Wind)、木管乐器(Woodwind)、铜管乐器(Brass)

阅读下列说明和C++-代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。【C++代码】 #include using namespace std; class invoice{ public: (1){ cout

阅读以下说明和Java代码,将应填入( )处的字句写在答题纸的对栏内。 【说明】 现如今线下支付系统可以使用现金(Cash)、移动支付、银行卡( Card)(信用卡( Creditcard)和储蓄卡( Debitcard))等多种支付方式( PaymentMethod)对物品(tem)账单(Bill)进行支付。图 5-1 是某支付系统的略类图。import java. util. Array List;import java. util. List;interface PaymentMethod { Public ( 1 )}∥cash、 Debitcard和ltem 实现略,ltem中getPrice( )取当前物品对象的价格abstract class Card (2) { private final String name, num; public Card(string name, String num){this.name= name; this, num = num; } @Overide public String toString ( ) { return String. format(“%s card[name = %s, num =%s}”, this. getType( ), name, num); @override public void pay(int cents) { System. out. printin(“Payed"+ cents+"cents using"+toString( )); this, execute Transaction(cents); } protected abstract String getType( ): protected abstract void execute Transaction(int cents)}class CreditCard ( 3 ) { public CreditCard(String name, String num){ (4) ;} @Override protected String getType( ){ return"CREDIT";} @Override protected void execute Transaction(int cents) { System. out. Println(cents +"paid using Credit Card. "); }} Class Bill {//包含所有购买商品的账单 private List items =new ArrayList( ); public void add(Item item) { items. add(item): } public intgetTotalPrice( ) {/*计算所有 item 的总价格,代码略*/} public void pay( PaymentMethod paymentMethod) {//用指定的支付方式完成支付(5) (getTotalPrice(): }}public 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);//将物品添加到账单中 Bill.pay(new Creditcard("LI SI”, "98765432101"))∥信用卡支付} public static void main(Stringl args) { (6) = new Paymentsystem( ); payment pay( ); }}

阅读以下C++代码,回答问题(1)~(5),将解答填入答题纸的对应栏内。【说明】以下C++代码实现一个简单乐器系统,音乐类(Music)可以使用各类乐器(Instrument)进行演奏和调音等操作。对部分乐器进行建模,其类图如题6-1所示,包括:乐器(Instrument)、打击乐器(Percussion)、弦乐器(Stringed)、管乐器(Wind)、木管乐器(Woodwind)、铜管乐器(Brass)。

阅读下列说明和C++代码,回答问题,将解答填入答题纸的对应栏内。【说明】某航空公司的会员积分系统将其会员划分为:普卡 (Basic)、银卡(Silver)和金卡 (Gold) 三个等级。非会员 (NonMember) 可以申请成为普卡会员。会员的等级根据其一年内累积 的里程数进行调整。描述会员等级调整的状态图如图 5-1 所示。现采用状态 (State) 模式实现上述场景,得到如图 5-2 所示的类图。【问题1】(15分)阅读上述说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

阅读下列说明和 Java 代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司欲开发一款汽车竞速类游戏,需要模拟长轮胎和短轮胎急刹车时在路面上 留 下的不同痕迹,并考虑后续能模拟更多种轮胎急刹车时的痕迹。现采用策略(Strategy) 设 计模式来实现该需求,所设计的类图如图 5-1 所示。

阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】  某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表5-1所示。表5-1 为支持将来模拟更多种类的飞机,采用策略设计模式(Strategy)设计的类图如图5-1所示。图5-1中,AirCraft为抽象类,描述了抽象的飞机,而类Helicopter、AirPlane、Fighter和Harrier分别描述具体的飞机种类,方法fly()和takeOff()分别表示不同飞机都具有飞行特征和起飞特征;类FlyBehavior与TakeOffBehavior为抽象类,分别用于表示抽象的飞行为与起飞行为;类SubSonicFly与SuperSonicFly分别描述亚音速飞行和超音速飞行的行为;类VerticalTakeOff与LongDistanceTakeOff分别描述垂直起飞与长距离起飞的行为。 【C++ 代码】 #include

阅读下列说明和 Java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某航空公司的会员积分系统将其会员划分为:普卡 (Basic) 、银卡(Silver)和金卡 (Gold)三个等级。非会员 (NonMember)可以申请成为普卡会员。会员的等级根据其 一年内累积的里程数进行调整。描述会员等级调整的状态图如图 6-1 所示 。现采用状态 (State) 模式实现上述场景,得到如图 6-2 所示的类图。

阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】 某文件管理系统中定义了类OfficeDoc和DocExplorer,当类OfficeDoc发生变化时,类DocExplorer的所有对象都要更新其自身的状态,现采用观察者(Observer)设计模式来实现该需求,所设计的类图如图6-1所示。

阅读下列说明和?C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】阅读下列说明和?Java代码,将应填入?(n)?处的字句写在答题纸的对应栏内。【说明】某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,但其制作过程相同。前台服务员?(Waiter)?调度厨师制作套餐。现采用生成器?(Builder)?模式实现制作过程,得到如图?6-1?所示的类图。

虚拟付费,是指包括银行卡支付、电话卡预付费、信用卡支付、网上支付、手机支付等各种非现金的支付方式。

多种支付手段结合模式是指第三方电子支付公司利用电话支付、移动支付和网上支付等多种方式提供支付平台的模式。在这种模式中,客户可以通过拨打电话、手机短信或者银行卡等形式进行电子支付。

采用信用卡、电子支票、电子现金和电子钱包等形式在网上支付的方式称为()A、资金支付B、线下支付C、淘宝支付D、现金支付

多选题农行电子账单系统查询账单支付记录功能,可根据()以及支付状态和日期等要素,查询出某出账单位的账单支付记录。A出账单位代码B流水号C卡号D账单号

判断题多种支付手段结合模式是指第三方电子支付公司利用电话支付、移动支付和网上支付等多种方式提供支付平台的模式。在这种模式中,客户可以通过拨打电话、手机短信或者银行卡等形式进行电子支付。A对B错

单选题采用信用卡、电子支票、电子现金和电子钱包等形式在网上支付的方式称为()A资金支付B线下支付C淘宝支付D现金支付

判断题客户和商家之间可采用信用卡、电子钱包、电子支票和电子现金等多种电子支付方式进行网上支付,采用在网上电子支付的方式节省了交易的开销。A对B错