[计算机类试卷]软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷44及答案与解析.doc

上传人:tireattitude366 文档编号:507212 上传时间:2018-11-29 格式:DOC 页数:20 大小:381.50KB
下载 相关 举报
[计算机类试卷]软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷44及答案与解析.doc_第1页
第1页 / 共20页
[计算机类试卷]软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷44及答案与解析.doc_第2页
第2页 / 共20页
[计算机类试卷]软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷44及答案与解析.doc_第3页
第3页 / 共20页
[计算机类试卷]软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷44及答案与解析.doc_第4页
第4页 / 共20页
[计算机类试卷]软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷44及答案与解析.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷 44及答案与解析 一、必答题(共 4道大题,每道大题 15分) 0 阅读下列说明和数据流图,回答问题 1至问题 3。 说明 图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还以及注销。管理人员可以查询某位读者、某种图书的借阅情况,还可以对当前图书借阅情况进行一些统计,给出统计表格,以便掌握图书的流通情况。 系统要实现以下四方面的功能:购入新书、读者借书、读者还书以及图书注销。 (1)购入新书:需要为该书编制图书卡片,包括分类目录号、图 书流水号 (要保证每本书都有唯一的流水号,即使同类图书也是如此 )、书名、作者、内容

2、摘要、价格和购书日期等信息,写入图书目录文件中。 (2)读者借书:填写借书单,包括读者号、欲借图书分类目录号,系统首先检查该读者号是否有效,若无效,则拒绝借书,否则进一步检查该读者所借图书是否超过最大限制数,若已达到最大借阅数,则拒绝借书,否则读者可以借出该书,登记图书分类目录号、图书流水号、读者号和借阅日期等,写回到借书文件中去。 (3)读者还书:根据图书流水号,从借书文件中读出和该图书相关的借阅记录,表明还书日期,再写回借书 文件中;如果图书逾期未还,则处以相应罚款。 (4)图书注销:将一些过时或无保留价值的图书注销,从图书文件中删除相关记录。 (5)流通查询:管理员可以对图书流通情况进行

3、查询,包括某位读者、某种图书和全局图书,给出流通情况统计表。 以下是经分析得到的数据流图及部分数据字典,有些地方有待填充,假定顶层数据流图是正确的。图 1-1是顶层数据流图,图 1-2是第0层数据流图,图 1-3是第 1层数据流图。 图 1-1 图 1-2 图 1-3 数据字典 (1)数据流条目 图书管理要求 =入库单 |借书单 |还书单 |注销单 入库单 =分类目录号 +数量 +书名 +作者 +内容摘要 +价格 +购书日期 借书单 =读者号 +(d)+借阅日期 还书单 =(e)+还书日期 (2)文件说明 文件名:目录文件 组成: 分类目录号 +书名 +作者 +内容摘要 +价格 +入库日期+总

4、数 +库存数 +(f) 1 根据题意,指出数据流图中缺失的数据流 (a)的名称,并指出该数据流的起点。 2 将下述文件正确填充在数据流图 (b)、 (c)处:读者文件、借书文件。 3 根据题意,补充数据字典中 (d)、 (e)、 (f)处的空缺。 3 阅读下列说明和 E-R图,回答 问题 1至问题 3。 说明 有个关于运动会的管理系统,在该系统中,委员会为每一个参赛的运动员赋以一个唯一的编号 “运动员号 ”,同时记录姓名、性别、年龄和队名,姓名和队名必须填写。 一个运动员属于且只属于一个队,一个运动员可以参赛多个项目。运动员参加比赛取得一个成绩,相应有一个积分:第一名积分 6分,第二名积分 4

5、分,第三名积分 2分,其他的没有积分。一个队的总积分是该队的所有队员的积分之和。 下图是该系统的 E-R图。图中的实体和属性同时给出了中英文两种名字,回答问题时只需写出英文名即可。 图 2-1 4 根据 E-R图中给出的词汇,按照 “有关模式名 (属性,属性, )” 的格式,将此 E-R图转换为 3个关系模式,指出每个关系模式中的主码和外码,其中模式名根据需要取实体名或联系名。 5 Athlete(ANo, AName, ASex, Age, ATeam),主键为 ANo。 Item(INo, IName, ITime, IPlace),主键为 INo。 Games(ANo, INo, Sco

6、re, Credit),主键为 (ANo, INo)。 6 假定 Games表存储参赛情况,如下的 SQL语句是委员会用于查询 “队名为China的各个运动员各自夺取得的总积分 ”的不完整语句,请在空缺处填入正确的内容。 SEl3ECT (1) FROM Games WHERE ANo (2) (SELECT ANo FROM (3) WHERE ATeam=“China“) GROUP BY ANo; 6 (1) 7 (2) 8 (3) 8 阅读下列说明和图,回答问题 1至问题 3。 说明 某大型旅店为了便于管理,欲开发一个客房管理系统。希望实现客房预定、入住登记、帐务结算、退房,以及将服务

7、项目记入客人帐单。 旅客包括散客和团体,散客预定或入住时需要提供姓名、性别、身份证和联系电话,团体则提供团体名称、负责人的姓名、性别、身份证和联系电话,以及团体人数。对于散客,还要提供换房。 旅店还提供了很多服务项目,比如早餐。对每一个入住客人,服务列表记录了住宿期间的各项服务,包括服务类型、日期、数量等。当然,客人也可以不要任何服务。 旅店的客房 有一个唯一的房间号,分为不同的类别,不同的房间床位数和价格不同。 为了有效的管理,需要记录每天的客房状态。客房的状态有:空闲、占用、已预定和维修。 . 客人入住后,客房处于占用状态; . 客人退房后,客房处于空闲状态; . 客人预定后,客房处于已预

8、定状态; . 预定客人入住后,客房处于占用状态; . 预定客人取消预定后客房处于空闲状态; . 需要维修时客房处于维修状态; . 维修完成后客房处于空闲状态。 该系统采用面向对象方法开发,系统中的类以及类之间的关系用UML类图表示,图 3-1是该系统的类图的一部分, 图 3-2描述了客房状态的转变情况。 图 3-1 图 3-2 9 请用图 3-1的属性和方法的名称给出客人类的属性和方法。 (注意:团体类中的负责人姓名等与散客的对应属性含义相同,不必区分 ) 10 在 UML中,重复度 (Multiplicity)定义了某个类的一个实例可以与另一个类的多少个实例相关联。通常把它写成一个表示取值范

9、围的表达式或者一个具体的值。例如图 3-1中的类客人和住宿,客人端的 “1”表示:一个住宿类的实例只能与一个 1个客人类的实例相关联;住宿类端的 “0*表示:一个住宿类的实例可 以与 0个或多个客人类的实例相关。请指出图 3-1中 (1)到 (4)处的重复度分别为多少? 11 根据题意,请指出图 3-2中状态 A、 B分别是什么状态,事件 C、 D分别是什么事件。 11 阅读下列说明和图,回答问题 1到问题 3。 说明 目前大多数操作系统都采用虚拟存储技术,这样可在较小的可用内存中执行较大的用户程序,可在内存中容纳更多程序并发执行。 引入虚拟存储技术,其基本思想是利用大容量的外存来扩充内存,产

10、生一个比有限的实际空间大得多、逻辑的虚拟内存空间,以便能够有效地支持多道 程序系统的实现和大型程序运行的需要,从而增强系统的处理能力。 虚拟存储技术主要分为虚拟页式存储管理和虚拟段式存储管理。 虚拟页式存储管理中,在进程开始运行之前,不是装入全部页面,而是装入一个或零个页面之后根据进程运行的需要,动态装入其他页面:当内存空间已满,而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便装入新的页面。在简单页式存储管理的基础上,增加请求调页和页面置换功能。 使用虚拟页式存储管理时需要在页表中增加以下内容:页号、驻留号、内存块号、外存地址、访问位、修改位。其中 ,驻留位,又称中断位,表示该页是在内

11、存还是在外存;访问位表示该页在内存期间是否被访问过;修改位表示该页在内存中是否被修改过。访问位和修改位可以用来决定置换哪个页面,具体由页面置换算法决定。 12 执行指令时,计算页号与页内地址,判断 “该页在内存吗 ”,若在,则进行地址映射过程;若不在内存,则产生缺页中断。当发生缺页中断时,保存当前进程现场,判断 “有空闲页面吗 ”,如有,直接调入所需的页面。若没有,按照某种算法选择一页置换,判断 “该页被修改过吗 ”,如果被修改过,就必须把它写回磁盘以便更新该页在磁盘上的副本;如 果该页没有被修改过,那么它在磁盘上的副本已经是最新的了,则不需要写回,调入的所需的页面直接覆盖被淘汰的页。调整页表

12、及内存分配表,恢复被中断进程现场。 补充缺页中断处理流程图 4-1中的判断 (1) (3)。 图 4-1 12 (1) 13 (2) 14 (3) 15 发生缺页时,通常需要进行页面置换,页面置换算法的优劣将会影响虚拟存储系统的性能。常用的页面置换算法有理想页面置换算法 (OPT: Optimal)、先进先出页面置换算法 (FIFO: First-In First-Out)以及最近最少使 用页面置换算法 (LRU:Least Recently Used)。 某程序在内存中分配 3页,初始为空,页面走向为 4、 3、2、 1、 4、 3、 5、 4、 3、 2、 1、 5。给出采用先进先出 (F

13、IFO)、最近最少使用 (LRU)和理想 (OPT)页面置换算法所得到的内存中的页面变化序列。 注:缺页标记栏,用表示没有缺页,用 表示发生了缺页。16 简述 Belady异常。 二、选答题(共 3道大题,每道大题 15分) 从下列 3道试题中任选 1道解答,如果解答的试题数超过 1道,则仅题号小的 1道题解答有效。 16 阅读下 列函数说明和 C代码, 说明 所谓货郎担问题,是指给定一个无向图,并已知各边的权,在这样的图中,要找一个闭合回路,使回路经过图中的每一个点,而且回路各边的权之和最小。 应用贪婪法求解该问题,程序先计算由各点构成的所有边的长度 (作为边的权值 ),按长度大小对各边进行

14、排序后,按贪婪准则从排序后的各边中选择组成回路的边,贪婪准则使得边的选择按各边长度从小到大选择。 函数中使用的预定义符号如下: #define M 100 typedef struct/*x为两端点 p1、 p2之间的距离, p1、 p2所组成边的长度 */ float x; int p1, p2; tdr; typedef struct/*p1、 p2为和端点相联系的两个端点, n为端点的度 */ int n, p1, p2; tr; typedef struct/*给出两点坐标 */ float x, y; tpd; typedef int tlM; int n=10; 函数 float

15、distance(tpd a, tpd b); /*计算端点 a、 b之间的距离 */ void sortArr(tdr aM, int m); /*将已经计算好的距离关系表按距离大小从小到大排序形成排序表, m为边的条数 */ int isCircuit(tr rM, int i, int j); /*判断边 (i, j)选入端点关系表 rM后,是否形成回路,若形成回路返回 0*/ void selected(tr rM, int i, int j); /*边 (i, j)选入端点关系表 r*/ void course(tr r M, tl lM); /*从端点关系表 r中得出回路轨迹表 *

16、/ void exchange(tdr aM, int m, int b); /*调整表排序表, b表示是否可调,即是否有长度相同的边存在 */ void travling(tpd pd M, int n, float dist, tl locusM) /*dist记录总路程 */ tdr drM; /*距离关系表 */ tr rM; /*端点关系表 */ int i, j, k, h, m; /*h表示选入端点关系表中的边数 */ int b; /*标识是否有长度相等的边 */ k=0; /*计算距离关系表中各边的长度 */ for(i=1; i n; i+) for(j=i+1; J =n

17、; j+) k+; drk x=(1); drk pl=i; drk p2=j; m=k; sortArr(dr, m); /*按距离大小从小到大排序形成排序 表 */ do b=1; dist=0; k=h=0: do k+; i=drk p1; j=drk p2; if(r(i n =1)(rj n =1)/*度数不能大于 2*/ if (2) /*若边 (i, j)加入 r后形成回路,则不能加入 */ (3); h+; dist+=drk x; else if (4) /*最后一边选入 r成回路,则该边必须加入且得到解 */ selected(r, i, j); h+: dist+=dr

18、k x; while(k !=n) (h !=n); if(h=n)/*最后一边选入构成回路,完成输出结果 */ course(r, locus); else(/*找不到解,调整 dr,交换表中边长相同的边在表中的顺序,并将 b置 0*/ (5); while(!b); 17 (1) 18 (2) 19 (3) 20 (4) 21 (5) 21 阅读以下说明和 C+代码, 说明 现要编写一个画矩形的程序,目前有两个画图程序: DP1和 DP2, DP1用函数 draw_a_line(x1, y1, x2, y2)画一条直线, DP2则用 drawline(x1, x2, y1, y2)画一条直

19、线。当实例化矩形时,确定使用 DP1还是DP2。为了适应变化,包括 “不同类型的形状 ”和 “不同类型的画图程序 ”,将抽象部分与实现部分分离,使它们可以独立地变化 。这里, “抽象部分 ”对应 “形状 ”, “实现部分 ”对应 “画图 ”,与一般的接口 (抽象方法 )与具体实现不同。这种应用称为Bridge(桥接 )模式。图 6-1显示了各个类间的关系。 图 6-1 这样,系统始终只处理 3个对象: Shape对象、 Drawingg对象、 DP1或 DP2对象。以下是 C+语言实现,能够正确编译通过。 C+代码 class DP1 public: static void draw_a_li

20、ne(double x1,double y1, double x2, double y2) /省略具 体实现 ; class DP2 public: static void drawline(double x1, double x2, double y1, double y2) /省略具体实现 ; class Drawing public: (1) void drawLine(double x1, double y1, double x2, double y2)=0; ; class V1Drawing: public Drawing public: void drawLine(double

21、x1,double y1, double x2, double y2) DP1: draw_a_line(x1, y1, x2, y2); ; class V2Drawing: public Drawing public: void drawLine(double x1, double y1,double x2, double y2) (2) ; class Shape privatc: (3) dp; public: Shape(Drawing*dp); virtual void draw()=0; void drawLine(double x1, double y1,double x2,

22、double y2); ; Shape: Shape(Drawing*dp) _dp=dp; void Shape:drawLine(double x1, double y1, double x2, double y2) /画一条直线 (4); class Rectangle: public Shape privatc: double_x1, _y1, _x2, _y2; public: Rectangle(Drawing *dp, double x1, double y1, double x2, double y2); void draw(); ; Rectangle: Rectangle(

23、Drawing*dp, double x1, double y1, double x2, double y2) : (5) _x1=x1; _y1=yl;_x2=x2; _y2=y2; void Rectangle:draw() /省略具体实现 22 (1) 23 (2) 24 (3) 25 (4) 26 (5) 26 阅读以下函数说明和 Java代码, 说明 现要编写一个画 矩形的程序,目前有两个画图程序: DP1和 DP2, DP1用函数 draw_a_line(x1, y1, x2, y2)画一条直线,DP2则用 drawline(x1, x2, y1, y2)画一条直线。当实例化矩形时

24、,确定使用 DPI还是 DP2。 为了适应变化,包括 “不同类型的形状 ”和 “不同类型的画图程序 ”,将抽象部分与实现部分分离,使它们可以独立地变化。这里, “抽象部分 ”对应 “形状 ”, “实现部分 ”对应 “画图 ”,与一般的接口 (抽象方法 )与具体实现不同。这种应用称为 Bridge(桥接 )模式。图 7-1显示了各个类间的关系。 图 7-1 这样,系统始终只处理 3个对象: Shape对象、 Drawing对象、 DP1或 DP2对象。以下是 JAvA语言实现,能够正确编译通过。 Java代码 /DP1 Java文件 public class DPI static public

25、void draw_a_line(double x1, double y1, double x2, double y2) /省略具体实现 /DP2 java文件 public class DP2 static public void drawline(double x1, double y1, double x2, double y2) /省略具体实现 /Drawing java文件 (1) public class Drawing abstract public void drawLine(double x1, double y1, double x2, double y2); /V1Dra

26、wing java文件 public class V1Drawing extends Drawing public void drawLine(double x1, double y1, double x2, double y2) DP1 draw_a_line(x1,y1, x2, y2); /V2Drawing java文件 public class V2Drawing extends Drawing public void drawLine(double x1, double y1, double x2, double y2)/画一条直线 (2); /Shape java文件 abstr

27、act public class Shape abstract public void draw(); private (3) dp; Shape(Drawing dp) _dp=dp; protected void drawLine(double x1, double y1, double x2, double y2) (4); /Rectangle java文件 public class Rectangle extends Shape private double_x1, _x2, _y1, _y2; public Rectangle(Drawing dp, double x1, doub

28、le y1, double x2, double y2) (5); _x1=x1; _x2=x2; _y1=y1; _y2=y2; public void draw() /省略具体实现 27 (1) 28 (2) 29 (3) 30 (4) 31 (5) 软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷 44答案与解析 一、必答题(共 4道大题,每道大题 15分) 1 【正确答案】 (a)名称:当前日期,起点:系统 时钟 【试题解析】 加工 2的输入数据流有 “当前日期 ”和 “有效的图书管理要求 ”。根据平衡原则,加工 2.1的输入数据流 (a)应为 “当前日期 ”,其起点自然是

29、“系统时钟 ”。 2 【正确答案】 (b)读者文件 (c)借书文件 【试题解析】 2“读者查询 ”需要 “借书文件 ”及 “读者文件 ”,而加工 3.3“图书查询 ”与 “读者文件 ”不相关,因此 b处应填 “读者文件 ”, c处应填 “借书文件 ”。 3 【正确答案】 (d)分类目录号 (e)图书流水号 (f)图书流水号 【试题解析】 根据说明 “填写借书 单,包括读者号、欲借图书分类目录号 ”可得,借书单应包括 “读者号 ”和 “图书分类号 ”。故 d应填 “分类目录号 ”。 还书时是根据 “图书流水号 ”的,因此还书单应包括 “图书流水号 ”。故 e应填图书流水号。 “目录文件 ”存储图

30、书的情况,包括分类目录号、图书流水号、书名、作者、内容摘要、价格,可见 “目录文件 ”需要存储图书流水号,而且 “一种 ”书有多个副本,因此 f应填 图书流水号 。注意,大括号 表示多个数据项。 4 【正确答案】 Athlete(ANo, AName, ASex, Age, ATeam),主键为 ANo。 Item(INo, IName, ITime, IPlace),主键为 INo。 Games(ANo, INo, Score, Credit),主键为 (ANo, INo)。 【试题解析】 E-R模型向关系模型的转换应遵循如下原则: 每个实体类型转换成一个关系模式; 一个 1: 1的联系 (

31、一对一联系 )可转换为一个关系模式,或与任意一端的关系模式合并。若独立转换为一个关系模式,那么两端关系的码及其联系的属性为该关系的属性;若与一端合并,那么将另一端的码及属性的属性合并到该端。 一个 1: n的联系 (一对多联系 )可转换为一个关系模式,或与 n端的关系模式合并。若独立转换为一个关系模式,那么两端关系的码及其联系的属性为该关系的属性,而 n端的码为关系的码。 一个 n: m的联系 (多对多联系 )可转换为一个关系模式,两端关系的码及其联系的属性为该关系的属性,而关系的码为两端实体的码的组合。 三个或三个以上多对多的联系可转换为一个关系模式,诸关系的码及联系的属性为关系的属性,而关

32、系的码为各实体的码的组合。 具有相同码的关系可以合并。 根据上述规则,可得如 下关系模式: Athlete(ANo, AName, ASex, Age, ATeam),主键为 ANo。 Item(INo, IName, ITime, IPlace),主键为 INo。 Games(ANo, INo, Score, Credit),主键为 (ANo, INo)。 5 【正确答案】 PRIMARY KEY ANo 【试题解析】 Athlete表 ANo是主键,创建表时需要说明主键,故空应填PRIMARY KEY ANo。 6 【正确答案】 SUM(Credit) 7 【正确答案 】 IN 8 【正确

33、答案】 Athlete 【试题解析】 SELECTALL|DISTINCT目标列表达式 ,目标列表达式 FROM 表名或视图名 ,表名或视图名 WHERE条件表达式 GROUP BY列名 1 HAVING条件表达式 ORDER BY列名 2 ASC|DESC 子句顺序为 SELECT、 FROM、 WHERE、 GROUP BY、 HAVING、 ORDER BY,但 SELECT和 FROM是必须的, HAVING子句只能与 GROUPBY搭配起来使用。 SELECT子句对应的是关系代数中的投影运算,用来列出查询结果中的属性,其输出可以是列名、表达式、集函数 (AVG、 COUNT、 MAX

34、、 MIN、SUM), DISTINCT选项可以保证查询的结果集中不存在重复元组; FROM子句对应的是关系代数中的笛卡儿积,它列出的是表达式求值过程中须扫描的关系;WHERE予句对应的是关系代数中的选择谓词。 根据题意,空 (1)应填 SUM(Credit),空 (2)应填 IN,空 (3)应填 Athlete。 9 【正确答案】 属性:姓名、性别、身份证、联系电话 方法:预定、入住、结帐 【试题解析】 “客人 ”类是 “散客 ”类和 “团体 ”类的泛化,具有二者的公共属性和公共方法。比对二者属性及方法得, “客人 ”类属性有:姓名、性别、身份证、联系电话,方法有:预定、入住、结账。 10

35、【正确答案】 (1)01 (2)1* (3)1 (4)01 【试题解析】 散客入住时只改变一个客房状态,而团体入住时则有可能改变多个客房状态 ;客房状态改变不一定是住宿导致的,客房维修同样改变客房状态。因此 (1)处应填 01, (2)处应填 1*。 客人可以有多项服务,但只需用一张 “服务列表 ”,当然也可能不需要任何服务;而一张服务列表必然属于而且只输于一个住宿。因此 (3)处应填 1, (4)处应填 01。 11 【正确答案】 A:空闲 B:占用 C:入住 D:取消预定 【试题解析】 “维修 ”完成后客房处于 “空闲 ”状态,故状态 A为 “空闲 ”;客人入住后,客房由 “空闲 ”转为

36、“占用 ”,故状态 B为 “占用 ”;状态 “已预订 ”经 “入住 ”转为 “占用 ”,故 C为 “入住 ”;状态 “已预订 ”经 “取消 ”转为 “空闲 ”,故 D为 “取消 ”。 12 【正确答案】 该页在内存吗? 13 【正确答案】 有空闲页面吗? 14 【正确答案】 该页被修改过吗? 【试题解析】 根据缺页中断处理的说明,易于判断: (1)该页在内存吗? (2)有空闲页面吗? (3)该页被修改过吗? 15 【正确答案】 OPT7次 FIFO9次LRU10次【试题解析】 常用页面置换算法有: (a)理想页面置换算法 (OPT: Optimal)。选择淘汰不再 使用或最远的将来才使用的页。

37、 (b)先进先出页面置换算法 (FIFO: FirSt-In First-Out)。选择淘汰主存驻留时间最长的页。 (c)最近最少使用页面置换算法 (LRU: Least Recently Used)。选择淘汰离当前时刻最近的一段时间使用得最少的页。 (d)随机算法 (Rand)。随机地选择淘汰的页。 (e)最近未使用页面置换算法 (NFU: Not Recently Used)。 16 【正确答案】 一般来讲,在内存中的物理页面数越多,程序的缺页次数应该越少,但令人吃惊的是,实际情况并不是这样。使用 FIFO算法时,有时会出现分配的页面数增多,缺页率反而提高的异常现象。 二、选答题(共 3道

38、大题,每道大题 15分) 从下列 3道试题中任选 1道解答,如果解答的试题数超过 1道,则仅题号小的 1道题解答有效。 17 【正确答案】 distance(pdi, pdj) 【试题解析】 是计算各边的长度,根据函数的声明及说明,可得应填distance(pdi,pdj)。 18 【正确答案】 !isCircuit(r, i, j) 【试题解析】 由注 释可见空 (2)是判断边 (i,j)加入 r后是否形成回路,若形成了回路,不加入,由语句 “dist+=drk x; ”可知此处是将边加入,故此处应该是不形成回路条件。参照 isCircuit函数声明及说明可知,若形成回路返回 0,故空 (2

39、)填 !isCircuit(r, j)。 19 【正确答案】 selected(r, i, j) 【试题解析】 是将边 (i, j)加入到 r中,参照 selected函数声明及说明可得空 (3)填 selected(r,i, j)。 20 【正确答案】 h=n-1 【试题解析】 由注释可见空 (4)是最后一条边条件,变量 h表示的是 “选入端点关系表中的边数 ”,而 n个节点回路应该包含 n条边,这点也可从后面 h=n输出解看出,故空 (4)填 h=n-1。 21 【正确答案】 exchange(dr, m, b) 【试题解析】 是进行调整,调用 exchange函数,正确调用形式为exch

40、ange(dr,m,b)。 22 【正确答案】 virtual 【试题解析】 由函数 drawLine()结尾的 “=0”易知,空 (1)应填 virtual。 23 【正确答案】 DP2: drawline(x1, x2, y1, y2) 【试题解析】 是调用 DP2系统的相应方法,可参照 DP1的对应函数的函数体,但要注意参数不完全相同,应填 DP2:drawline(x1,x2, y1, y2)。 24 【正确答案】 Drawing 【试题解析】 _dp属性是用来存储 Drawing对象的,参照 shape的构造函数可确认这一点,空 (3)应填 Drawing*。 25 【正确答案】 _

41、dp- drawLine(x1, y1, x2, y2) 【试题解析】 Shape类的 drawLine方法是通 过调用 Drawing对应的方法来实现所需要的功能,因此空 (4)应填 dp- drawLine(x1,y1,x2,y2)。 26 【正确答案】 Shape(dp) 【试题解析】 显然是基类构造函数,应填 Shape(dp)。 27 【正确答案】 abstract 【试题解析】 由类 Drawing的 drawLine()方法是 abstract的知, Drawing要么是接口,要么是抽象类,在此为抽象类,故空 (1)应填 abstract。 28 【正确答案】 DP2.drawl

42、ine(x1, x2, y1, y2) 【试题解析】 是调用 DP2系统的相应方法,可参照 DP1的对应函数的函数体,但要注意参数不完全相同,应填 DP2.drawline(x1,x2, y1, y2)。 29 【正确答案】 Drawing 【试题解析】 _dp属性是用来存储 Drawing对象的,参照 Shape的构造函数可确认这一点,空 (3)应填 Drawing。 30 【正确答案】 _dp.drawLine(x1, y1, x2, y2) 【试题解析】 Shape类的 drawLine方法是通过调用 Drawing对应的方法来实 现所需要的功能,因此空 (4)应填 dp.drawLine(x1, y1, x2, y2)。 31 【正确答案】 super(dp) 【试题解析】 显然是基类构造函数,应填 super(dp)。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1