首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(1)~(5)处的字句写在答题纸的对应栏内。 【说明】 某航空公司的会员积分系统将其会员划分为普卡(Basic)、银卡(Silver)和金卡(Gold)三个等级。非会员(NonMember)可以申请成为普卡
阅读下列说明和C++代码,将应填入(1)~(5)处的字句写在答题纸的对应栏内。 【说明】 某航空公司的会员积分系统将其会员划分为普卡(Basic)、银卡(Silver)和金卡(Gold)三个等级。非会员(NonMember)可以申请成为普卡
admin
2019-10-08
22
问题
阅读下列说明和C++代码,将应填入(1)~(5)处的字句写在答题纸的对应栏内。
【说明】
某航空公司的会员积分系统将其会员划分为普卡(Basic)、银卡(Silver)和金卡(Gold)三个等级。非会员(NonMember)可以申请成为普卡会员。会员的等级根据其一年内累积的里程数进行调整。描述会员等级调整的状态图如图5所示。现采用状态(State)模式实现上述场景,得到如图6所示的类图。
【C++代码】代码修改点做了备注
#include<iostream>,
using namespace std:
class FrequentFlyey;class CBasic;class Csilver;class CGold;class CNoCustomer;//提前引用
class CState
{
private:
int flyMiles; ∥里程数
publie:
_____(1);
//根据累积里程数调整会员等级
};
class FrequentFlyer
{
friend class CBasic;
friend CSilver; //此处在CSilver前面少了class
friend class CGold;
private: //此处应该改为public题目有误
CState*state;CState*nocustomer;CState*basic;CState*silver;CState*gold;
double flyMiles;
public:
FrequentFlyer()
{
flyMiles=0;
setState(nocustomer);
}
void setState(CState*state)
{
this->state=state;
}
void travel(int miles)
{
double bonusMiles=state->travel(miles,this);
flyMiles=flyMiles+bonusMiles;
}
};
class CNoCustomer:public CState //非会员
{
public:
double travel(int miles,FrequentFlyer*context)
{
tout<<’’Your travel will not account for points\n’’; //不累积里程数
return miles;
}
};
class CBasil:public CState //普卡会员
{
public:
double travel(int miles,FrequentFlyer*context)
{
if(context->flyMiles>=25000&&context->flyMiles<50000)
_____(2);
if(context->flyMiles<25000)
_____(3);
returnmiles+0.5*miles; //累积里程数
}
};
class CGOld:public CState //金卡会员
{
public:
double travel(int miles,FrequentFlyer*context)
{
if(context->flyMiles>=25000&&context->flyMiles<50000)
_____(4);
if(eontext->flyMiles<25000)
_____(5);
return miles+0.5*miles; //累积里程数
)}
};
class Csilver:public CState //银卡会员
{
double travel(int miles,FrequentFlyer*context)
{
if(context->tlyMiles<25000)
context->setState(context->basic);
if(context->flyMiles>=50000)
context->setState(context->gold);
return (miles+0.25*miles); //累积里程数
}
};
选项
答案
(1)virtual double travel(int miles,FrequentFlyer*context)=0 (2)context->setState(context->Cbasic) (3)context->setState(context->CSilve) (4)context->setState(context->Cbasic) (5)context->setState(context->CSilve)
解析
转载请注明原文地址:https://jikaoti.com/ti/DZa7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
A、B、C、D4台主机之间哪些可以直接通信?哪些需要通过设置网关(或路由器)才能通信?请画出网络连接示意图,并注明各个主机的子网地址和主机地址。若要加入第5台主机E,使它能与D主机直接通信,其IP地址的设定范围应是多少?
阅读以下有关网络规划的叙述,回答问题1至问题3。网络工程是一项复杂的系统工程,一般可分为网络规划、网络设计、工程实施、系统测试验收和运行维护等几个阶段。网络规划是在需求分析的基础上,进行系统可行性分析和论证,以确定网络总体方案。网络规划阶段任务完成
阅读以下说明,回答【问题1】和【问题2】。【说明】VPN是通过公用网络Internet将分布在不同地点的终端连接在一起的专用网络。目前大多采用IPSec来实现IP网络上端点间的认证和加密服务(见图3)。VPN的基本配置如下:
通常,在该图书馆架构无线局域网(WLAN)的设计流程需要经过以下6个阶段:A.设备软硬件安装、调试B.确定无线局域网物理结构C.确定无线局域网逻辑结构D.进行需求分析和现场调研E.验收测试和维护F.进行设备产
通常,在该图书馆架构无线局域网(WLAN)的设计流程需要经过以下6个阶段:A.设备软硬件安装、调试B.确定无线局域网物理结构C.确定无线局域网逻辑结构D.进行需求分析和现场调研E.验收测试和维护F.进行设备产
请简要说出DHCP服务的基础流程?请分别写出在Linux系统中启动、停止和重新启动DHCP服务的3个命令。
阅读以下说明,回答问题1、问题2、问题3、问题4和问题5,将解答填入对应栏内。[说明]CableModem可以作为一个网桥直接与用户相连,也可以作为一个路由器与Hub相连,从经济角度考虑,目前采用后一种方式居多。有一种HFC网络如图6-2
阅读以下关于网络应用系统模块测试的技术说明,根据要求回答问题1至问题4。【说明】某公司的枝术开发小组经过一年的努力,编码完成了本公司嵌入式产品——宽带路由器的NanOs程序,该程序规模约为31200行。公司经理指定郭工程师(以下简称为郭工)安排其
ISP是什么?请举例。在路由器和ISDN之间需要加入终端适配器(TA)吗?试说明在什么情况下需要加入TA。
随机试题
男性,18岁,诊断为风湿性心脏病主动脉关闭不全,下列哪项不是周围血管征
基牙倾斜时取得共同就位道的方法错误的是
患者女,28岁,妊娠产物已完全排出,阴道出血逐渐停止,腹痛逐渐消失。妇科检查:子宫接近未孕大小或略大,宫颈口已关闭,需采取的措施是()
某酒店为了10月8日的开业庆典,于10月7日向电视台租借一台摄像机。庆典之日,工作人员不慎摔坏摄像机,酒店决定按原价买下,以抵偿电视台的损失,遂于10月9日通过电话向电视台负责人表明此意,对方表示同意。10月15日,酒店依约定向电视台支付了价款。摄像机所有
【2013专业知识真题下午卷】有线电视系统中,对系统载噪比(C/N)的设计值要求,下列的表述中哪一项是正确的?()
()不属于城市河湖水系规划的基本内容。
后张法无粘结预应力混凝土梁板施工中,预应力筋的张拉顺序是()。
股东大会是股份有限公司的权力机构,由()组成。
“固定资产清理”项目应根据“固定资产清理”科目的期末借方余额填列,如“固定资产清理”科目期末为贷方余额,以“一”号填列。()
作家李先生从2010年3月1日起在某报刊连载一小说,每期取得报社支付的收入300元,共连载110期(其中3月份30期)。9月份将连载的小说结集出版,取得稿酬48600元。下列各项关于李先生取得上述收入缴纳个人所得税的表述中,正确的是()。(2011年
最新回复
(
0
)