软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷41
-
阅读以下关于某订单管理系统的技术说明、部分UML类图及Java程序,将Java程序中(1)~(5)空缺处的语句填写完整。
[说明]
某订单管理系统的部分UML类图如图5-16所示。
在图5-16中,Product表示产品,ProductList表示所销售产品的列表,Order表示产品订单,Orderltem表示产品订单中的一个条目,OrderList表示订单列表,SalesSystem提供订单管理系统的操作接口。各个类的部分属性和方法说明如表5-23所示。
可以使用类java.util.ArrayList<E>来实现对象的聚集关系,如图5-16中OrderList与Order之间的聚集关系。
for-each循环提供了一种遍历对象集合的简单方法。在for-each循环中,可以指定需要遍历的对象集合及用来接收集合中每个元素的变量,其语法如下:
for(用来接收集合中元素的变量:需要遍历的对象集合)
如果要使用for-each循环来遍历对象集合,那么包含该对象集合的类必须实现接口java.util.Iterable<T>。
Java程序7-1和Java程序7-2分别给出了类OrderList和方法statistic的Java代码。
-
阅读以下关于某订单管理系统的技术说明、部分UML类图及C++代码,将C++程序中(1)~(5)空缺处的语句填写完整。
[说明]
某订单管理系统的部分UML类图如图5-15所示。
图5-15中,Product表示产品,ProductList表示产品目录,Order表示产品订单,Orderltem表示产品订单中的一个条目,OrderList表示订单列表,SalesSystem提供订单管理系统的操作接口。
请完善类Order的成员函数getOrderedAmount()和类SalesSystem的statistic()方法,各个类的属性及部分方法定义参见下面的C++代码。
[C++代码]
-
如果限制该算法最多输出K个可供选择的房间号,则在程序流程图(见图6-21)中“I>N”(a所指向的判断框中)应修改为(4)。
-
阅读以下应用程序说明和C程序,将C程序段中(1)~(7)空缺处的语句填写完整。
[说明]
以下[C程序]完成从指定数据文件中读入职工的工号和他完成产品个数的数据信息,对同一职工多次完成的产品个数进行累计,最后按表5-22所示的格式输出职工完成产品数量的名次(ORDER)。该名次是按每位职工完成的产品数量(QUANTITY)排序,之后同一名次的职工人数(COUNT)和他们的职工号(NUMBER,同一名次的职工号以从小到大的顺序输出)。
以下[C程序]采用链表结构存储有关信息,链表中的每个表元对应一位职工。在数据输入同时,形成一个有序链表(按完成的产品数量和工号排序)。当一个职工有新的数据输入,在累计他的完成数量时会改变原来链表的有序性,为此应对链表进行删除、查找和插入等处理。
[C程序]
-
如果等级为r的房间每人每天的住宿费为RATE(r),其中RATE为数组,则为使该算法在输出每个候选的房间号RM(J)后,再输出这批散客每天所需的总住宿费DAYRENT(J),在程序流程图(见图6-21)中“ROOM(I)→RM(J)”(b所指向的方框中)之后应增加的处理语句是(3)。
-
假设该旅馆当前各个房间的情况如表6-14所示。
当输入M=3,R=0时,该算法的输出是(1)。
当输入M=2,R=1时,该算法的输出是(2)。
-
现需了解十大最畅销(借出次数最多)图书或唱碟。为此引入类TemPopulate以存储所有十大畅销图书或CD的名称及其被借出的次数。利用顺序图描述某类图书或唱碟被借出后成为十大畅销图书或唱碟时对象间的消息交互,通常在系统一次运行过程中,应有(11)个TenPopulate实例对象最合适,一个 TenPopulate类实例对象最多需要和(12)个Items_on_loan实例对象交互。
[供选择的答案]
(11) A.1 B.2 C.10 D.n(图书和唱碟种类数)
(12) A.2 B.10 C.20 D.n(图书和唱碟种类数)
-
阅读以下某旅馆客房管理系统的算法说明和程序流程图,根据要求回答问题1~问题4。
[算法说明]
某旅馆共有N间客房。每间客房的房间号、房间等级、床位数及占用状态分别存放在数组ROOM、RANK、NBED和 STATUS中。房间等级值为1、2或3。房间的状态值为0(空闲)或1(占用)。客房是以房间(不是床位)为单位出租的。
程序流程图(见图6-21)所反映的算法是,根据几个散客的要求预订一间空房。程序的输入为:人数M,房间等级要求 R(R=0表示任意等级都可以)。程序的输出为:所有可供选择的房间号。
在程序流程图(见图6-21)中,若要某个房间I被选中,则需要满足什么条件?
-
请从表6-12中选择相应的方法名,填写到图6-19所示中(7)~(10)空缺处的对应位置中。
-
该电子商务公司还对外开放一项出租图书和唱碟的业务。由于业务需求,该公司委托软件开发公司A开发一套信息管理系统。该系统将记录所有的图书信息、唱碟信息、用户信息和用户租借信息等。A公司决定采用面向对象的分析和设计方法开发此系统。某类图书或唱碟被借阅时应记录的信息如表6-13所示,如图6-20所示描述了系统定义的两个类Book和CD,分别表示图书和唱碟的信息。
经过进一步分析,设计人员新定义一个类Items_on_ loan,以表示类Book和CD的共有属性和方法(要注意,不同名称的属性和方法表示不同的含义,如CD中的 composer与Book中的author无任何关系)。同时为了记录每种图书或唱碟的历史记录,引入类CirculationHistory,类中存储的信息是如图1-1所示中所表示的内容。请采用UML表示法将类Book、类CD、类Items_on_loan和类Circulation History之间的关系表示出来。
-
阅读以下说明和图,根据要求回答问题1~问题4。
[说明]
某电子商务公司开办了电子商务网站,主要为各注册的商家提供商品销售功能。为更好地吸引用户,该公司计划为注册的商家提供商品(Commodity)促销(Promotion)功能。商品的分类(Category)不同,促销的方式和内容也会有所不同。
注册商家可发布促销信息。商家首先要在自己所销售商品的分类中,选择促销涉及的某一具体分类,然后选出该分类的一个或多个商品(一种商品仅属于一种分类),接着制定出一个比较优惠的折扣政策和促销活动的优惠时间,最后由系统生成促销信息并将该促销信息公布在网站上。
商家发布促销信息后,网站的注册用户便可通过网站购买促销商品。用户可选择参与某一个促销 (Promotion)活动,并选择具体的促销商品(Commodity),输入购买数量等购买信息。系统生成相应的一份促销订单(POrder)。只要用户在优惠活动的时间范围内,通过网站提供的支付系统,确认支付该促销订单(即完成支付),就可以优惠的价格完成商品的购买活动,否则该促销订单失效。
系统采用面向对象方法开发,系统中的类及类之间的关系用UML类图表示,如图6-18所示是该系统类图中的一部分;系统的动态行为采用UML序列图表示,如图6-19所示是发布促销的序列图。
识别关联的多重度是面向对象建模过程中的一个重要步骤。请根据说明中给出的描述,将如图6-18所示中(1)~(6)空缺处的内容填写完整。
-
创建Customers表时,cid使用INTEGER数据类型,cname使用CHAR(80)数据类型,address使用CHAR(200)数据类型,cardnum使用CHAR(16)数据类型并且要求此列值唯一。请在下列用于创建表Customers的SQL语句空缺处填入正确的内容。
-
以下的SQL语句是书店用于查询“所有订购了bid为‘123-456’图书的用户订购其他图书的情况”的不完整语句,请在空缺处填入正确的内容。
-
阅读下列某网上订书管理系统的说明和E-R图,根据要求回答问题1~问题3。
[说明]
某网上订书系统的E-R图(已消除了不必要的冗余)如图6-17所示(图中没有标出主码)。图中实体的说明如表6-10所示,相关属性说明如表6-11所示。
一个顾客可以在同一天填写多张购书单,每张购书单上可填写多种图书,每种图书可以订购多本,bid相同的图书在同一张购书单上不能出现多次。
注:为简化起见,不考虑信用卡号码泄漏所带来的安全性等问题。
根据图6-17所示的E-R图中给出的词汇,按照“关系模式名(属性,属性,…)”的格式,将此E-R图转换为4个关系模式,并指出每个关系模式中的主码和外码,其中模式名根据需要取实体名或联系名。
-
修改在住宅安全系统第0层数据流图(见图6-14)中的数据存储“配置信息”,将会影响第0层数据流图中的哪些加工?
-
将图6-15所示的加工4的细化数据流图中的数据流补充完整,请按以下答题格式示例的要求回答问题。
[答题格式示例]
[数据流的起点]→(数据流名称)→[数据流名称终点]或[数据流的起点]→(数据流名称)
-
阅读以下关于住宅安全系统的技术说明,根据要求回答问题1~问题4。
[说明]
基于某嵌入式系统的住宅安全系统可使用传感器(如红外探头、摄像头等)来检测各种意外情况,如非法进入、火警和水灾等。
房主可以在安装该系统时配置安全监控设备(如传感器、显示器、报警器等),也可以在系统运行时修改配置,通过录像机和电视机监控与系统连接的所有传感器,并通过控制面板上的键盘与系统进行信息交互。在安装过程中,系统给每个传感器赋予一个ID编号和类型,并设置房主密码以启动和关闭系统,设置传感器事件发生时应自动拨出的电话号码。当系统检测到一个传感器事件时,就激活警报,拨出预置的电话号码,并报告关于位置和检测到的事件的性质等信息。
住宅安全系统的顶层数据流图如图6-13所示,图 6-14是住宅安全系统的第0层数据流图,图6-15是对住宅安全系统的第0层数据流图中加工4的细化图。
需求分析是一个包括创建和维持系统需求文档所必需的一切活动的过程。一个通用的需求分析过程模型如图6-16所示,请从以下供选择的答案中选择合适的内容填写到图6-16中相应的位置中。
[供选择的答案] A.用户需求和功能需求 B.需求描述 C.需求导出和分析 D.需求有效性验证
-
请将住宅安全系统的顶层数据流图(见图6-13)中(A)~(D)空缺处,以及第0层数据流图(见图 6-14)中(E)空缺处的内容填写完整。