试题详情

试题内容

试题五
阅读以下说明和C++代码,将应填入  (n)  处的字句写在答题纸的对应栏内。
【说明】
某绘图系统存在Point、Line、Square三种图元,它们具有Shape接口,图元的类图关系如图5-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来,它提供的接口不能被系统直接使用。代码5-1既使用了XCircle又遵循了Shape规定的接口,既避免了从头,开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码5-2根据用户指定的参数生成特定的图元实例,并对之进行显示操作。
绘图系统定义的接口与XCircle提供的显示接口及其功能如下表所示:

【代码5-1】
class Circle:public   (1)  {
pfivme:
(2)   m_circle;
public:
void display(){
m_circle.  (3)  ;
}
};
【代码5-2】
class Factory{
public:
(4)   getShapeInstance (int type){  //生成特定类实例
switch (type){
case 0:rcturn new Point;
Case l:return new Rectangle;
case 2: return new Line;
case 3: return new Circle;
default: return NULL;
} void main (int argo, char *argv[]) {
if (argc!=2) {
cout << "error parameters !" << endl; return; inttype=atoi (argv[1]) ;
Factory factory;
Shape *s;
s = factory.     (5)    :
if (s==NULL) {
cout << "Error get the instance !" << endl;
return;
}
s->display () ;
(6)   ;
return;



查看答案

软题库参考答案:暂时没有答案(仅供参考)

软题库解析:正在加载....

你可能感兴趣的试题

3题:阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某航空公司会员积分系统(CFrequentFlyer)的主要功能描述如下:
乘客只要办理该航空公司的会员卡,即可成为普卡会员(CBasic)。随着飞行里程数的积累,可以从普卡会员升级到银卡会员(CSilver)或金卡会员(CGold)。非会员(CNonMember)不能积累里程数。
每年年末,系统根据会员在本年度累积的里程数对下一年会员等级进行调整。
普卡会员在一年内累积的里程数若满25000英里但不足50000英里,则自动升级为银卡会员;若累积的里程数在50000英里以上,则自动升级为金卡会员。银卡会员在一年内累积的里程数若在50000英里以上,则自动升级为金卡会员。
若一年内没有达到对应级别要求的里程数,则自动降低会员等级。金卡会员一年内累积的里程数若不足25000英里,则自动降级为普卡会员;若累积的里程数达到25000英里,但是不足50000英里,则自动降级为银卡会员。银卡会员一年内累积的里程数若不足25000英里,则自动降级为普卡会员
3题:阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某ETC(ElectronicTollCollection,不停车收费)系统在高速公路沿线的特定位置上设置一个横跨道路上空的龙门架(Tollgantry),龙门架下包括6条车道
(Traficlanes),每条车道上安装有雷达传感器(Radarsensor)、无线传输器
(Radiotransceiver)和数码相机(DigitalCamera)等用于不停车收费的设备,以完成正常行驶速度下的收费工作。该系统的基本工作过程如下:
(1)每辆汽车上安装有车载器,驾驶员(Driver)将一张具有唯一识别码的磁卡插入车载器中。磁卡中还包含有驾驶员账户的当前信用记录。
(2)当汽车通过某条车道时,不停车收费设备识别车载器内的特有编码,判断车型,将收集到的相关信息发送到该路段所属的区域系统(Regionalcenter)中,计算通行费用创建收费交易(Transaction),从驾驶员的专用账户中扣除通行费用。如果驾驶员账户透支,则记录透支账户交易信息。区域系统再将交
6题:

试题六
阅读下列说明和C++代码,将应填入  (n)  处的字句写在对应栏内。
【说明】
已知某企业欲开发一家用电器遥控系统,即用户使用一个遥控器即可控制某些家用电器的开与关。遥控器如左下所示。该遥控器共有4个按钮,编号分别是0至3,按钮0和2能够遥控打开电器1和电器2,按钮1和3则能遥控关闭电器1和电器2。由于遥控系统需要支持形式多样的电器,因此,该系统的设计要求具有较高的扩展性。现假设需要控制客厅电视和卧室电灯,对该遥控系统进行设计所得类图如右下所示。

右上图中,类RomoteController的方法onPressButton(int button)表示当遥控器按键按下时调用的方法,参数为按键的编号;Command接口中on和off方法分别用于控制电器的开与关;Light中turnLight(int degree)方法用于调整
3题:

试题三
阅读下列说明和图,回答问题1至问题3,将解答填入对应栏内。
[说明]
某运输公司决定为新的售票机开发车票销售的控制软件。图3-1给出了售票机的面板示意图以及相关的控制部件。
售票机相关部件的作用如下所述:
目的地键盘用来输入行程目的地的代码(例如,200表示总站)。
乘客可以通过车票键盘选择车票种类(单程票、多次往返票和座席种类)。
继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。
显示屏显示所有的系统输出和用户提示信息。
插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。
打印机用于输出车票。
假设乘客总是支付恰好需要的金额而无需找零,售票机的维护工作(取回现金、放入空白车票等)由服务技术人员完成。
系统采用面向对象方法开发,使用UML进行建模。系统的顶层用例图和类图分别如图3-2和图3-3所示。
3题:试题三
阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
[说明]
某公司的人事能门拥有一个地址博(AddressBookSystem),管理系统(ddressBookSystem),用于管理公司所有员工的地址记录(PersonAddress)。员工的地址记录包括:姓名、住址、城市、省份、邮政编码以及联系电话等等信息。
管理员可以完成对地址簿中地址记录的管理操作,包括:
(1)维护地址记录。根据司的人员变动情况,对地址记录进行添加、修改、删除等操作;
(2)排序。按照员工姓氏的字典顺序或邮政编码对址领中的所有记录。
(3)打印地址记录。以邮件标签的格式打印一个地址单独的地址簿。系统会记录管理为便于管理,管理员在系统中为公可的不同部门建立员对每个地址簿的修改操作,包括:
(1)创建地址簿。新建个地址簿并保存。
(2)打开地址簿。打开一一个已有的地址簿。
(3)修改地址簿。对打开的地址簿进行修改并保存
系统将提供一个GUI(图形用户界面)实现对地址簿的各种操作。<
3题:

阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某高校图书馆欲建设—个图书馆管理系统,目前已经完成了需求分析阶段的工作。功能需求均使用用例进行描述,其中用例“借书(Check Out Books】”的详细描述如下。
参与者:读者<Patron>。
典型事件流:
1输入读者ID;
2.确认该读者能够借阅图书,并记录读者ID;
3输入所要借阅的图书ID:
4根据图书目录中的图书ID确认该书可以借阅,计算归还时间,生成借阅记录:
5.通知读者图书归还时间。
重复步骤3-5,直到读者结束借阅图书。
备选事件流:
2a.若读者不能借阅图书,说明读者违反了图书馆的借书制度(例如,没有支付借书费用等)
(1)告知渎者不能借阅,并说明拒绝借阅的原因
(2)本用例结束
4a.读者要借阅的书无法外借
(1)告知读者本书无法借阅;
(2)回到步骤3。