试题详情

试题内容

阅读下列说明和图,回答问题l至问题3,将解答填入答题纸的对应栏内。
【说明】
一个简单的图形编辑器提供给用户的基本操作包括:创建图形、创建元素、选择元素以及删除图形。图形编辑器的组成及其基本功能描述如下:
(1)图形由文本元素和图元元素构成,图元元素包括线条、矩形和椭圆。
(2)显示在工作空间中,一次只能显示一张图形(即当前图形,current)。
(3)提供了两种操作图形的工具:选择工具和创建工具。对图形进行操作时,一次只能使用一种工具(即当前活动工具,active)
① 创建工具用于创建文本元素和图元元素。
② 于显示在工作空间中的图形,使用选择工具能够选定其中所包含的元素,可以选择一个元素,也可以同时选择多个元素。被选择的元素称为当前选中元素( selected)。
③ 种元素都具有对应的控制点。拖拽选定元素的控制点,可以移动元素或者调整元素的大小。
现采用面向对象方法开发该图形编辑器,使用UML进行建模。构建出的用例图和类图分别如图3-1和3-2所示。


【问题1】 (4分)
根据说明中的描述,给出图3-1中U1和U2所对应的用例,以及(1)和(2)处所对应的关系。
【问题2】(8分)
根据说明中的描述,给出图3.2中缺少的C1~C8所对应的类名以及(3)~(6)处所对应的多重度。
【问题3】(3分)
图3-2中的类图设计采用了桥接(Bridge)设计模式,请说明该模式的内涵。
查看答案

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

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

你可能感兴趣的试题

5题:

10、[函数5]
int DeleteNode(Bitree *r,int e){
Bitree p=* r,pp,s,c;
while(  (1)  ){/ * 从树根结点出发查找键值为e的结点 * /
pp=p;
if(e<p->data) p=p->Lchild;
else p=p->Rchild
}
if(! p)return-1;/ * 查找失败 * /
if(p->Lchild && p->Rchild){/ * 处理情况③ * /
s=  (2)  ;pp=p;
while(  (3)  ){pp=s;s=s->Rchild;}
p->dara=s->data;P=s;
}
/ * 处理情况①、② * /
if(  (4)  )c=p->Lchild;
else c=p->Rchild
if(p==*r
4题:

阗读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。
【说明】
采用归并排序对n个元素进行递增排序时,首先持n个元素的数组分成各含n/2个元素的两个子数组.然后用归并排序对两个子数组进行递归排序,最后合并两个已经排好序的子数组得到排序结果。
下面的C代码是对上述归并算法的实现,其中的常量和变量说明如下:




1题:

试题一(15分)
阅读下列说明和图,回管问题1至问题4,将解管填八管题纸的对应栏内。
【说明】
   某大学为进步推进无纸化考试,欲开发考试系统。系统管理员能够创建包括专业方向、课程编号、任课教师等相关考试基础信息、,教师和学生进行考试相关的工作。系统与考试有关的王要功能如下。
 (1)考试设置。教师制定试题(题目和答案),制定考试说明、考试时间和提醒时间等考试信息,录入参加考试的学生信息,并分别进行存储。
  (2)显示并接收解答。根据教师设定的考试信息,在考试有效时间内向学生显示考试说明和题目,根据设定的考试提醒时间进行捏醒,并接收学生的解答。
 (3)处理解答。根据答案对接收到的解管数据进行处理,然后特解管结果进行存储。
   (4)生成成绩报告。根据解答结果生成学生个人成绩报告,供学生查看。
 (5)生成成绩单。对解答结果进行核算后生成课程成绩单供教师查看。
   
5题:从下列的2道试题(试题五至试题六)中任选1道解答。请在答题纸上的指定位置处将所选择试题的题号框涂黑。若多涂或者未涂题号框,则对题号最小的一道试题进行评分。
试题五(共15分)
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】

生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。图5-1所示为其类图。

【C++代码】#include#includeusingnamespacestd;
classProduct{private:
stringpartA,partB;public:
Product(){}
voidsetPartA(conststring&s){PartA=s;}
1题:

试题一(共15分)
阅读下列说明图,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】
某大学欲开发一个基于Web的课程注册系统。该系统的主要功能如下:
1、验证输入信息
(1)检查学生信息:检查学生输入的所有注册所需信息。如果信息不合法,返回学生信息不合法提示;如果合法,输出合法学生信息。
(2)检查学位考试信息:检查学生提供的学位考试结果。如果不合法,返回学位考试结果不合法提示;如果合法,检查该学生注册资格。
(3)检查学生资格:根据合法学生信息和合法学位考试结果,检查该学生对欲选课程的注册资格。如果无资格,返回无注册资格提示;如果有注册资格,则输出注册学生信息(包含选课学生标识)和欲注册课程信息。
2、处理注册申请
(1)存储注册信息:将注册学生信息记录在学生库。
(2)存储所注册课程:将选课学生标识与欲注册课程进行关联,然后存入课程库。
(3)发送注册通知:从学生库中读取注册学生信息,从课程库中读取所注册课程信息,结学生发送接受提示;给教务人员发送所注册
5题:阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图5-1所示。

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

【C++代码】
#incl