试题内容
试题五
阅读以下说明和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;
软题库参考答案:暂时没有答案(仅供参考)
软题库解析:正在加载....
你可能感兴趣的试题
试题六
阅读下列说明和C++代码,将应填入 (n) 处的字句写在对应栏内。
【说明】
已知某企业欲开发一家用电器遥控系统,即用户使用一个遥控器即可控制某些家用电器的开与关。遥控器如左下所示。该遥控器共有4个按钮,编号分别是0至3,按钮0和2能够遥控打开电器1和电器2,按钮1和3则能遥控关闭电器1和电器2。由于遥控系统需要支持形式多样的电器,因此,该系统的设计要求具有较高的扩展性。现假设需要控制客厅电视和卧室电灯,对该遥控系统进行设计所得类图如右下所示。
右上图中,类RomoteController的方法onPressButton(int button)表示当遥控器按键按下时调用的方法,参数为按键的编号;Command接口中on和off方法分别用于控制电器的开与关;Light中turnLight(int degree)方法用于调整
试题三
阅读下列说明和图,回答问题1至问题3,将解答填入对应栏内。
[说明]
某运输公司决定为新的售票机开发车票销售的控制软件。图3-1给出了售票机的面板示意图以及相关的控制部件。
售票机相关部件的作用如下所述:
目的地键盘用来输入行程目的地的代码(例如,200表示总站)。
乘客可以通过车票键盘选择车票种类(单程票、多次往返票和座席种类)。
继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。
显示屏显示所有的系统输出和用户提示信息。
插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。
打印机用于输出车票。
假设乘客总是支付恰好需要的金额而无需找零,售票机的维护工作(取回现金、放入空白车票等)由服务技术人员完成。
系统采用面向对象方法开发,使用UML进行建模。系统的顶层用例图和类图分别如图3-2和图3-3所示。第3题:试题三
阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
[说明]
某公司的人事能门拥有一个地址博(AddressBookSystem),管理系统(ddressBookSystem),用于管理公司所有员工的地址记录(PersonAddress)。员工的地址记录包括:姓名、住址、城市、省份、邮政编码以及联系电话等等信息。
管理员可以完成对地址簿中地址记录的管理操作,包括:
(1)维护地址记录。根据司的人员变动情况,对地址记录进行添加、修改、删除等操作;
(2)排序。按照员工姓氏的字典顺序或邮政编码对址领中的所有记录。
(3)打印地址记录。以邮件标签的格式打印一个地址单独的地址簿。系统会记录管理为便于管理,管理员在系统中为公可的不同部门建立员对每个地址簿的修改操作,包括:
(1)创建地址簿。新建个地址簿并保存。
(2)打开地址簿。打开一一个已有的地址簿。
(3)修改地址簿。对打开的地址簿进行修改并保存
系统将提供一个GUI(图形用户界面)实现对地址簿的各种操作。<
阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某高校图书馆欲建设—个图书馆管理系统,目前已经完成了需求分析阶段的工作。功能需求均使用用例进行描述,其中用例“借书(Check Out Books】”的详细描述如下。
参与者:读者<Patron>。
典型事件流:
1输入读者ID;
2.确认该读者能够借阅图书,并记录读者ID;
3输入所要借阅的图书ID:
4根据图书目录中的图书ID确认该书可以借阅,计算归还时间,生成借阅记录:
5.通知读者图书归还时间。
重复步骤3-5,直到读者结束借阅图书。
备选事件流:
2a.若读者不能借阅图书,说明读者违反了图书馆的借书制度(例如,没有支付借书费用等)
(1)告知渎者不能借阅,并说明拒绝借阅的原因
(2)本用例结束
4a.读者要借阅的书无法外借
(1)告知读者本书无法借阅;
(2)回到步骤3。