问答题


阅读下列说明和数据流图,回答问题1至问题3。将解答填入对应栏内。
【说明】
某图书馆管理系统的主要功能是图书管理和信息查询。对于初次借书的读者,系统自动生成读者号,并与读者基本信息(姓名、单位、地址等)一起写入读者文件。系统的图书管理功能分为四个方面:购入新书、读者借书、读者还书以及图书注销。
(1)购入新书时需要为该书编制入库单。入库单内容包括图书分类目录号、书名、作者、价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到目前为止,购入此种图书的数量)。
(2)读者借书时需填写借书单。借书单内容包括读者号和所借图书分类目录号。系统首先检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该读者已借图书是否超过最大限制数(假设每位读者能同时借阅的书不超过5本)。若已达到最大限制数,则拒绝借书;否则允许借书,同时将图书分类目录号、读者号和借阅日期等信息写入借书文件中。
(3)读者还书时需填写还书单。系统根据读者号和图书分类目录号,从借书文件中读出与该图书相关的借阅记录,标明还书日期,再写回到借书文件中。若图书逾期,则处以相应的罚款。
(4)注销图书时,需填写注销单并修改图书目录文件中的库存总量。
系统的信息查询功能主要包括读者信息查询和图书信息查询。其中读者信息查询可得到读者的基本信息以及读者借阅图书的情况;图书信息查询可得到图书基本信息和图书的借出情况。图书管理系统的顶层图如图13-5所示;图书管理系统的第0层DFD图如图 13-6所示,其中加工2的细化图如图13-7所示。



【问题1】
数据流图13-6中有两条数据流是错误的,请指出这两条数据流的起点和终点。

【参考答案】

(1)“2处理查询请求”到“读者文件”的数据流; (2)从“读者文件”到“3登记读者信息”的数据流。
热门 试题

问答题
【说明】 某绘图系统存在point、line、square三种图元,它们具有Shape接口,图元的类图关系如图13-12所示。现要将circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由 Shape派生而来的,它提供的接口不能被系统直接使用。代码13-2既使用了XCircle又遵循了Shape规定的接口,既避免了从头开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码13-3根据用户指定的参数生成特定的图元实例,并对之进行显示操作。绘图系统定义的接口与XCircle提供的显示接口及其功能如表13-5所示。 表13-5接口及其功能ShapeXCircle功能display()DisplayIt()显示图元【代码13-2】class Circle (1) { private (2) pxc; public Circle(){ pxc=new (3) ; } public void display(){ pxc. (4) ; }}【代码13-3】public class Factory{ public (5) getShape Instance(int tyoe){ 生成特定类实例 switch(type){ case 0: return new point(); case 1: return new Rectangle(); case 2: return new line(); case 3: return new Circle(); default: return null } }};public class App{ public static viod main(String argv[){ if(argv. length!=1){ system. out. println( error parameters! ); Return; } int type=(new Integer(argv[0)). intValue(); Factory factory=new Factory(); shape s; s=factory. (6) ; if(s==null){ system.out. println( Error get instance! ); Return; } s.display(); return; }}