试题六(共15分)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图6-1所示。采用状态( State)模式来实现该纸巾售卖机,得到如图6-2所示的类图。其中类State为抽象类,定义了投币、退币、出纸巾等方法接口。类SoldState、SoldOutState、NoQuarterState和HasQuarterState分别对应图6-1中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。【Java代码】import j ava.util.*;interface State{public void insertQuarter(); //投币public void ejectQuarter(); //退币public void turnCrank();腑安下“出纸巾”按钮public void dispense(); //出纸巾}class TissueMachine {( 1 ) soldOutState, noQuarterState, hasQuarterState, soldState, state;state = soldOutState;int count = 0; //纸巾数public TissueMachine(intnumbers) { /*实现代码省略 */}public StategetHasQuarterState() { returnhasQuarterState; }public StategetNoQuarterState() { returnnoQuarterState, }public State getSoldState() { return soldState; }public State getSoldOutState() { return soldOutState; }public int getCount() { return count, }//其余代码省略}class NoQuarterState implements State {TissueMachine tissueMachine;public void insertQuarter() {tissueMachine.setState( (2));}//构造方法以及其余代码省略}class HasQuarterState implements State {TissueMachine tissueMachine;public void ejectQuarter() {tissueMachine.setState ((3));}//构造方法以及其余代码省略}class SoldState implements State {TissueMachine tissueMachine;public void dispense() {if(tissueMachine.getCount() 0) {tissueMachine.setState ((4));} else {tissueMachine.setState ((5)); }}}

试题六(共15分)

阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图6-1所示。

采用状态( State)模式来实现该纸巾售卖机,得到如图6-2所示的类图。其中类State为抽象类,定义了投币、退币、出纸巾等方法接口。类SoldState、SoldOutState、NoQuarterState和HasQuarterState分别对应图6-1中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。

【Java代码】

import j ava.util.*;

interface State{

public void insertQuarter(); //投币

public void ejectQuarter(); //退币

public void turnCrank();腑安下“出纸巾”按钮

public void dispense(); //出纸巾

}

class TissueMachine {

( 1 ) soldOutState, noQuarterState, hasQuarterState, soldState, state;

state = soldOutState;

int count = 0; //纸巾数

public TissueMachine(intnumbers) { /*实现代码省略 */}

public StategetHasQuarterState() { returnhasQuarterState; }

public StategetNoQuarterState() { returnnoQuarterState, }

public State getSoldState() { return soldState; }

public State getSoldOutState() { return soldOutState; }

public int getCount() { return count, }

//其余代码省略

}

class NoQuarterState implements State {

TissueMachine tissueMachine;

public void insertQuarter() {

tissueMachine.setState( (2));

}

//构造方法以及其余代码省略

}

class HasQuarterState implements State {

TissueMachine tissueMachine;

public void ejectQuarter() {

tissueMachine.setState ((3));

}

//构造方法以及其余代码省略

}

class SoldState implements State {

TissueMachine tissueMachine;

public void dispense() {

if(tissueMachine.getCount() > 0) {

tissueMachine.setState ((4));

} else {

tissueMachine.setState ((5)); }

}

}


相关考题:

●试题四阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】函数QuickSort是在一维数组A[n]上进行快速排序的递归算法。【函数】void QuickSort(int A[],int s,int t){int i=s,j=t+1,temp;int x=A[s];do{do i++;while (1) ;do j--;while(A[j]x);if(ij){temp=A[i]; (2) ; (3) ;}}while(ij);A[a]=A[j];A[j]=x;if(si-1) (4) ;if(j+1t) (5) ;}

阅读下列说明和流程图,将应填入(n)的字句写在对应栏内。【说明】下列流程图(如图4所示)用泰勒(Taylor)展开式sinx=x-x3/3!+x5/5!-x7/7!+…+(-1)n×x2n+1/(2n+1)!+…【流程图】计算并打印sinx的近似值。其中用ε(>0)表示误差要求。

试题五(共15分)阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。采用状态( State)模式来实现该纸巾售卖机,得到如图5-2所示的类图。其中类State为抽象类,定义了投币、退币、出纸巾等方法接口。类SoldState、SoldOutState、NoQuarterState和HasQuarterState分别对应图5-1中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。【C++代码】includeiostreamusing namespace std;∥以下为类的定义部分class TissueMachine; //类的提前引用class State{public:virtual void insertQuarter()=0; //投币virtual void ejectQuarter()=0; //退币virtual void turnCrank()=0; //按下“出纸巾”按钮virtual void dispense()=0; //出纸巾};/*类SoldOutState. NoQuarterState. HasQuarterState. SoldState的定义省略,每个类中均定义了私有数据成员TissueMachine* tissueMachine;*/class TissueMachine{private:(1) *soldOutState, *noQuarterState, *hasQuarterState,*soldState, *state;int count, //纸巾数public:TissueMachine(int numbers);void setState(State* state);State* getHasQuarterState();State* getNoQuarterState();State* getSoldState();State* getSoldOutState();int getCount();//其余代码省略};//以下为类的实现部分void NoQuarterState::insertQuarter(){tissueMachine-setState( (2) );}void HasQuarterState::ejectQuarter(){tissueMachine-setState( (3) );}void SoldState::dispense(){if(tissueMachine-getCount()0){tissueMachine-setState ( (4) );}else{tissueMachine-setState( (5) );}}//其余代码省略

阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写在对应栏内。【说明】阅读下面几段C++程序回答相应问题。比较下面两段程序的优缺点。①for (i=0; i<N; i++ ){if (condition)//DoSomething…else//DoOtherthing…}②if (condition) {for (i =0; i<N; i++ )//DoSomething}else {for (i=0; i <N; i++ )//DoOtherthing…}

阅读以下说明和Java程序,填补代码中的空缺(1)~(6),将解答填入答题纸的对应栏内。【说明】很多依托扑克牌进行的游戏都要先洗牌。下面的Java代码运行时先生成一副扑克牌,洗牌后再按顺序打印每张牌的点数和花色。【Java代码】

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

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

●试题二阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】该程序运行后,输出下面的数字金字塔【程序】includestdio.hmain (){char max,next;int i;for(max=′1′;max=′9′;max++){for(i=1;i=20- (1) ;++i)printf(" ");for(next= (2) ;next= (3) ;next++)printf("%c",next);for(next= (4) ;next= (5) ;next--)printf("%c",next);printf("\n");}}

●试题一阅读下列说明和流程图,将应填入(n)的字句写在答题纸的对应栏内。【说明】下列流程图(如图4所示)用泰勒(Taylor)展开式sinx=x-x3/3!+x5/5!-x7/7!+…+(-1)n×x 2n+1/(2n+1)!+…【流程图】图4计算并打印sinx的近似值。其中用ε(0)表示误差要求。

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

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

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

图6-1是下一代网络的体系结构简图,请根据此简图将应填入(n)处的字句写在答题纸的对应栏内。

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

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

阅读下列说明,补充(1)-(9),将解答填入答题纸的对应栏内。

某公司生产牙膏和纸巾两类产品,其中牙膏又分为含氟的、美白的、防敏感的、防牙结石的,纸巾分为药用消毒纸巾、卫生间纸巾、美容纸巾。该公司产品组合的长度是( )。A.2B.3C.4D.7

阅读下列说明,回答问题1和问题2,将解答写在答题纸的对应栏内。【说明】 Windows 系统的用户管理配置中,有多项安全设置,如图2-1 所示。

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

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

【说明】某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。

阅读下列说明和 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、厕纸

卫生纸巾自动包装机(用于纸巾定型、捆扎、包边、胶贴、封口和整理的设备。()

单选题某公司生产牙膏和纸巾两类产品,其中牙膏又分为含氟的、美白的、防敏感的、防牙石的,纸巾分为药用消毒纸巾、卫生间纸巾、美容纸巾等。该公司产品组合的宽度是( )。A2B3C4D7