当前位置: 首页icon 51CTO软考 > 软考资讯 >考试科目 >2020软件设计师试题 软件设计师2020年试题

2020软件设计师试题 软件设计师2020年试题

作者:mb5ce3810a164cb2023-10-25 01:00:11
备考咨询 刷题指导
添加专属学姐
下载资料 2024上半年软考备考资料+考试大纲
下载按钮 下载
引号

为帮助广大软考中级软件设计师考生更好备考,整理汇总了软件设计师部分下午试题、答案及解析供考生查阅,并提供免费在线模拟答题、历年试题免费下载等服务 阅读下列说明和c++代码,应填入 (n) 处。 【说明】 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表10-6所示 为支持将来能够模拟更多种

引号

为帮助广大软考中级软件设计师考生更好备考,整理汇总了软件设计师部分下午试题、答案及解析供考生查阅,并提供免费在线模拟答题、历年试题免费下载等服务

阅读下列说明和c++代码,应填入 (n) 处。

【说明】

某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表10-6所示

为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(strategy)设计的类图如图10-11所示:

其中,duck为抽象类,描述了抽象的鸭子,而类rubberduck、mallardduck、 cottonduck和redheadduck分别描述具体的鸭子种类,方法fly()、quack()和display()分别表示不同种类的鸭子都具有飞行特征、发声特征和外观特征;类flybehavior与 quackbehavior为抽象类,分别用于表示抽象的飞行行为与发声行为:类flynoway与 flywithwings分别描述不能飞行的行为和用翅膀飞行的行为;类quack、squeak与 quacknoway分别描述发出“嘎嘎”声的行为、发出橡皮与空气摩擦声的行为与不发声的行为。请填补以下代码中的空缺。

【c++代码】

#include

using namespace (1) ; class flybehavior{

public: (2) fly()=0;

};

class quackbehavior{

public: (3) quack() = 0;

};

class flywithwings:public flybehavior{

public:void fly(){ cout<< “使用翅膀飞行 ! ” <

};

class flynoway:public flybehavior{

public:void fly(){ cout<< “不能飞行!”<

};

class quack:public quackbehavior{

public:void quack(){ cout<<“发出\‘嘎嘎\’声 !”<

};

class squeak:public quackbehavior{

public:void quack(){cout<<“发出空气与橡皮摩擦声!”<

};

class quacknoway:public quackbehavior{

public:void quack (){ cout<<“不能发声 !”<

};

class duck{

protected:

flybehavior* (4) ;

quackbehavior* (5) ;

public:

void fly(){ (6) ; }

void quack(){ (7) ;);

virtual void display()=0;

};

class rubberduck:public duck{

public:

rubberduck(){

flybehavior=new (8) ;

quackbehavior=new (9) ;

}

~rubberduck(){

if(!flybehavior)delete flybehavior;

if(!quackbehavior) delete quackbehavior;

}

void display(){/*此处省略显示橡皮鸭的代码*/ }

};

//其他代码省略

代理合作学习群