


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 真题 软件设计师下午 2012 上半年填空题 试题 1 阅读以下说明和图,根据要求回答下列问题。 说明 某学校欲开发图书管理系统, 以记录图书馆所藏图书及其借出和归还情 况,提供给借阅者借阅图书功能, 提供给图书馆管理员管理和定期更新图书表功 能。主要功能的具体描述如下:(1) 处理借阅。借阅者要借阅图书时,系统必须对其身份 ( 借阅者 ID) 进 行检查。通过与教务处维护的学生数据库、 人事处维护的职工数据库中的数据进 行比对,以验证借阅者 ID 是否合法。若合法,则检查借阅者在逾期未还图书表 中是否有逾期未还图书, 以及罚金表中的罚金是否超过限额。 如果没有逾期未还 图书并且罚金未超过限
2、额, 则允许借阅图书, 更新图书表, 并将借阅的图书存入 借出图书表。 借阅者归还所借图书时, 先由图书馆管理员检查图书是否缺失或损 坏,若是,则对借阅者处以相应罚金并存入罚金表;然后,检查所还图书是否逾 期,若是,执行“处理逾期”操作;最后,更新图书表,删除借出图书表中的相 应记录。(2) 维护图书。图书馆管理员查询图书信息;在新进图书时录入图书信 息,存入图书表;在图书丢失或损坏严重时,从图书表中删除该图书记录。(3) 处理逾期。系统在每周一统计逾期未还图书,逾期未还的图书按规 则计算罚金,并记入罚金表, 并给有逾期未还图书的借阅者发送提醒消息。 借阅 者在借阅和归还图书时, 若罚金超过限
3、额, 管理员收取罚金, 并更新罚金表中的 罚金额度。现采用结构化方法对该图书管理系统进行分析与设计, 获得如图 2-9 所 示的顶层数据流图和图 2-10 所示的 0 层数据流图。第 1 题: 问题 1使用说明中的词语,给出图2-9中的实体E1E4的名称。 参考答案:E1:借阅者E2:图书管理员E3/E4 :学生数据库/职工数据库详细解答:第 2 题: 问题 2使用说明中的词语,给出图2-10中的数据存储D1D4的名称。 参考答案:D1:图书表D2:借出图书表D3:逾期未还图书表D4:罚金表详细解答第3题 问题 3在DFD建模时,需要对有些复杂加工(处理)进行进一步精化,绘制下层数 据流图。针
4、对图 2-10 中的加工“处理借阅”,在 1 层数据流图中应分解为哪些 加工?(使用说明中的术语 ) 参考答案检查借阅者身份或检查借阅者 ID; 检查逾期未还图书; 检查罚金 是否超过限额; 借阅图书; 计算图书损坏或丢失罚金额;详细解答第4题 问题 4说明问题3中绘制 1层数据流图时要注意的问题。 参考答案保持父图与子图平衡父图中某加工的输入输出数据流必须与它的子图的输入输出数据流在数量和名字上相同。 如果父图的一个输入 (或输出)数据流对 应于子图中几个输入 (或输出)数据流,而子图中组成这些数据流的数据项全体正 好是父图中的这一个数据流,那么它们仍然算是平衡的详细解答 第5题 问题 1补
5、充图 2-11 中的联系和联系的类型。 参考答案如图 2-16详细解答:第 6 题: 问题 2根据图 2-11 ,将逻辑结构设计阶段生成的关系模式中的空缺处补充完整, 并用下划线指出主键。 参考答案:<口>护士编号,病区</u><u>手术室号,护士编号</u>,责任 <u>病案号 </u> ,病床号 <u> 病案号 </u> ,医生编号 <u> 病案号,手术室 号,手术时间,医生编号 </u>详细解答: 第 7 题: 问题 3 如果系统还需要记录医生给病人的用药情况,即记录医
6、生给病人所开处方中药品的名称、用量、价格、药品的生产厂家等信息。请根据该要求,对图 211 进行修改,画出补充后的实体、实体间联系和联系的类型。 参考答案:如图 2-17详细解答: 试题 3 阅读以下说明,根据要求回答下列问题。 说明 某网上购物平台的主要功能如下。(1) 创建订单。顾客 (Customer) 在线创建订单 (Order) ,主要操作是向订 单中添加项目、从订单中删除项目。订单中应列出所订购的商品 (Product) 及其 数量 (quantities) 。(2) 提交订单。订单通过网络来提交。 在提交订单时, 顾客需要提供其姓 名(name)、收货地址(address)以及付
7、款方式(form of payment)( 预付卡、信用 卡或者现金 ) 。为了制定送货计划并安排送货车辆, 系统必须确定订单量 (volume) 除此之外,还必须记录每种商品的名称 (Name)、造价(cost price)、售价(sale price) 以及单件商品的包装体积 (cubic volume) 。(3) 处理订单。订单处理人员接收来自系统的订单; 根据订单内容, 安排 配货,制定送货计划。在送货计划中不仅要指明发货日期 (delivery date) ,还 要记录每个订单的限时发送要求 (Delivery Time Window) 。(4) 派单。订单处理人员将已配好货的订单转
8、交给派送人员。(5) 送货/收货。派送人员将货物送到顾客指定的收货地址。当顾客收货 时,需要在运货单 (delivery slip) 上签收。签收后的运货单最终需交还给订单 处理人员。(6) 收货确认。当订单处理人员收到签收过的运货单后,会和顾客进行 一次再确认。现采用面向对象方法开发上述系统,得到如图 2-12 所示的用例图和图 2-13 所示的类图。第 8 题: 问题 1根据说明中的描述,给出图2-12中A1A3所对应的参与者名称和U1、U2 处所对应的用例名称。 参考答案:A1:顾客A2:订单处理人员A3 :派送人员U1 :收货U2派单 详细解答: 第 9 题: 问题 2根据说明中的描述
9、,给出图2-13中C1C3所对应的类名以及横线处所对 应的多重度 (类名使用说明中给出的英文词汇 ) 。 参考答案:C1: CustornerC2: Order C3: Product (1)1(2)0.*或 0.n(3)0.*或 0.n(4)1.*或 1.n详细解答: 第 10 题: 问题 3根据说明中的描述,将类C2和C3的属性补充完整(属性名使用说明中给出 的英文词汇 ) 。 参考答案:C2:volume、delivery date 、form of paymentC3:cost price 、saleprice 、cubic volume详细解答: 试题 4阅读下列说明和C代码,回答下
10、列问题。 说明 用两台处理机A和B处理n个作业。设A和B处理第i个作业的时间分 别为ai和bi。由于各个作业的特点和机器性能的关系,对某些作业,在A上处理时间长,而对某些作业在B上处理时间长。一台处理机在某个时刻只能处理一 个作业, 而且作业处理是不可中断的, 每个作业只能被处理一次。 现要找出一个 最优调度方案,使得 n 个作业被这两台处理机处理完毕的时间 (所有作业被处理 的时间之和 ) 最少。算法步骤如下。(1)确定候选解上界为R短的单台处理机处理所有作业的完成时间m 用p(x,y,k)=1 表示前k个作业可以在A用时不超过x且在B用时不超过 y 时间内处理完成,则 p(x,y,k)=p
11、(x-ak,y,k-1) II p(x,y-bk,k-1)( II 表示逻辑或 操作 ) 。(3) 得到最短处理时间为 min(max(x,y) 。C 代码下面是该算法的C语言实现。(1) 常量和变量说明n :作业数m:候选解上界a :数组,长度为n,记录n个作业在A上的处理时间,下标从0开始 b :数组,长度为n,记录n个作业在B上的处理时间,下标从0开始 k :循环变量p :三维数组,长度为(m+1)*(m+1)*(n+1)temp :临时变量max:最短处理时间(2) C 代码#include stdio.h int n, m;int a60, b60, p100 100 60;void
12、 read() /* 输入 n、a、b,求出 m,代码略 */void schedule() /* 求解过程 */int x, y, k;for (x=0;x =m;x+) for (y=0;y m;y+) for (k=1;k n;k+)px y k =0;for (k=1;k n;k+) for (x=0;x =m;x+) for (y=0;y =m;y+) if (x-ak-1=0)if ()Px yk=(Pxyk II Px y-bk-1 k-1);void write() /* 确定最优解并输出 */int x, y, temp, max=m; for (x=0;x =m;x+) f
13、or (y=0,y =m;y+) if ()temp:if (temp max) max = temp;print ("n%dn",max) ;void main() read() ; schedule() ;write() ; 第 11 题: 问题 1根据以上说明和C代码,填充C代码中的空缺处。参考答案:pxy0=1 pxyk=px-ak-1yk-1 y-bk-1 =0 pxyn=1 或 pxyn!=0 或 pxyn 或其他等价表示形式 (x =y)?x:y详细解答: 第 12 题: 问题 2根据以上C代码,算法的时间复杂度为 (用0符号表示)参考答案:0(m<su
14、p>2</sup>n)详细解答: 第 13 题: 问题 3考虑 6个作业的实例,各个作业在两台处理机上的处理时间如表 2-7 所 示。该实例的最优解为 ,最优解的值 (即最短处理时间 )为。最优解用(x1,x2,x3, x4,x5, x6)表示,其中若第i个作业在A上处理,则 xi=1,否则xi=2。如(1,1,1,1,2,2)表示作业1、2、3和4在A上处理, 作业 5 和 6 在 B 上处理。参考答案:(1,1,2,2,1,1)15详细解答: 试题 5 第 14 题: 阅读下列说明和C+弋码,回答下列问题。 说明 某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖
15、啡店会 根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表 2-8 所示。C+ 代码#include iostream #include string using namespace std;consr int ESPRESSO_PRICE = 25; const int DRAKROAST_PRICE = 20;const int MOCHA_PRICE = 10;const int WHIP_PRICE = 8; class Beverage / 饮料: string description;public: () return description;/ 配/class
16、CondimentDecorator: public Beverage 料protected: ;class Espresso: public Beverage 蒸馏咖啡public:Espresso () description="Espresso" int cost () return ESPRESSO_PRICE; ;class DarkRoast: public Beverage / 深度烘培咖啡 public: DarkRoast() description = "DardRoast" int cost() return DRAKROAST_P
17、RICE; ;class Mocha: public CondimentDecorator / 摩卡public: Mocha (Beverage*beverage) this-beverage=beverage; string getDescription() return beverage-getDescription()+",Mocha" int cost() return MOCHA_PRICE+beverage- cost(); ;class Whip: public CondimentDecorator / 奶泡public: Whip (Beverage*be
18、verage) this-beverage=beverage; string getDescription() return beverage-getDescription()+",Whip" int cost() return WHIP_PRICE+beverage- cost(); int main()Beverage* beverage = new DarkRoast() ; beverage=new Mocha() ;beverage=new Whip () ;cout beverage- getDescription() " ¥" b
19、everage- cost() end1;return 0; 编译运行上述程序,其输出结果为:DarkRoast, Mocha Whip ¥ 38。参考答案:protectedvirtual stringcost()=0 Beverage* beveragegetDescriptionvirtualbeverage beverageint详细解答: 试题 6 第 15 题: 阅读下列说明和 Java 代码,回答下列问题。 说明 某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料, 咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表 2-9 所示。 现 采
20、用装饰器 (Decorator) 模式来实现计算费用的功能,得到如图 2-15 所示的类图。Java 代码 import java.util.*:classBeverage / 饮 料Stringdescription ="Unknown Beverage"public() returndescription; public; abstract class CondimentDecorator extendsBeverage / 配料 ; classEspresso extends Beverage / 蒸馏咖啡publicprivate final int ESPRESS
21、O_PRIC=E 25;Espresso()description="Espresso"publicintcost()returnESPRESSO_PRICE; classDarkRoast extendsBeverage /深度烘培咖啡private finalint DARKROAST_PRIC=E 20;publicDarkRoast() description = "DarkRoast"publicint cost() return DARKROASPTRICE;classMocha extends CondimentDecorator / 摩 卡private final int MOCHA_PRIC=E 10;public Mocha(Beverage bevera
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数控冲床操作工特殊工艺考核试卷及答案
- 学考信息技术试题及答案
- 英美文学面试题库及答案
- 银行运维实操考试题库及答案
- 银行校招模拟试题及答案
- 数学专业期末试题及答案
- 山东农学专业试题及答案
- 采矿专业试题及答案
- 中药专业面试题及答案
- 安徽省华师联盟2026届高三上学期9月开学质量检测生物试卷(含答案)
- 中医基础理论9病机课件
- 《建筑工程测量》教学教案
- 2023年全国出版专业技术人员职业资格考试出版专业基础知识(中级)试题及参考答案
- 工程结构检测与加固-3-砌体结构检测与加固
- 《影视美学教学》课件
- 《工会固定资产管理办法》中华全国总工会办公厅印发
- 软件正版化培训课件
- 八年级科学上册水的浮力测试卷(含答案)
- 新生儿耳聋基因筛查与遗传咨询
- 经络美容中医美容
- 某化工厂拆除施工方案化工旧设备拆除施工方案
评论
0/150
提交评论