欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】中级软件设计师下午试题-84及答案解析.doc

    • 资源ID:1323206       资源大小:71.50KB        全文页数:12页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】中级软件设计师下午试题-84及答案解析.doc

    1、中级软件设计师下午试题-84 及答案解析(总分:98.01,做题时间:90 分钟)一、试题一(总题数:1,分数:23.00)【说明】图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还及注销。管理人员可以查询某位读者、某种图书的借阅情况,还可以对当前图书借阅情况进行一些统计,给出统计表格,以便掌握图书的流通情况。系统要实现以下 4 方面的功能:购入新书、读者借书、读者还书及图书注销。(1)购入新书:需要为该书编制图书卡片,包括分类目录号、图书流水号(要保证每本书都有唯一的流水号,即使同类图书也是如此)、书名、作者、内容摘要、价格和购书日期等信息,写入图书目录文件中。(2)读者借书

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

    3、得到的数据流图及部分数据字典,有些地方有待填充,假定顶层数据流图是正确的。如图9-1 所示是顶层数据流图,如图 9-2 所示是第 0 层数据流图,如图 9-3 所示是第 1 层数据流图。(分数:23.01)(1).【问题 1】根据题意,指出数据流图中缺失的数据流(a)的名称,并指出该数据流的起点。(分数:7.67)_(2).【问题 2】将下述文件正确填充在数据流图(b)、(c)处:读者文件、借书文件。(分数:7.67)_二、试题二(总题数:1,分数:15.00)【说明】关于一位花商有以下一些事实。(1)销售在不同地区生长的花,这些地区一年的最低气温在一定范围内变化。(2)想用编号来表示发货类型

    4、。(3)要出售某些类型的花。假定已经通过 SQL 语句建立了基本表:CREATE TABLE Zone(ID CHAR(2) PRIMARY KEY,LowerTemp NUMERIC(3),UpperTemp NUMERIC(3);CREATE TABLE Delivery(ID CHAR (2) PRIMARY KEY,Category CHAR(5),DelSize NUMERIC(5,3);CREATE TABLE FlowerInfo(ID CHAR (3),ComName CHAR(25),LatName CHAR(30),Czone NUMERIC(3),Hzone NUMERI

    5、C(3),Delivered NUMERIC(3),SunNeed CHAR(3),PRIMARY KEY(ID);地区(ID,最高温度,最低温度)发货(ID,发货类型,发货规格)花的信息(ID,普通名,拉丁名,花能够生长的最冷地区,花能够生长的最热地区,发货类型,日光需求)(分数:15.00)(1).【问题 1】写出 SQL 语句,将记录(ID,Category=pot,DelSize=1.5)插入 Delivery 表中。(分数:5.00)_(2).【问题 2】写出 SQL 语句实现如下功能:查询以花瓶(pot)形式发货的所有鲜花的 ID、普通名及花瓶的规格,得到结果表按照普通名的字母逆序

    6、打印。(分数:5.00)_(3).【问题 3】写出如下 SQL 实现语句。(1)把对表 Zone 的 INSERT 权限授予用户 Smith,并允许它再将此权限授予他人。(2)收回已经授予 Tom 的对表 FlowerInfo 中属性 ComName 的修改权限。(3)建立视图 viewpot,表现问题 2 的功能。(分数:5.00)_三、试题三(总题数:1,分数:15.00)【说明】公司 IT 部门决定开发一个计算机管理系统以记录期刊的传阅情况。期刊在公司内部传阅,员工可以要求加入传阅队列。图书室登记公司收到的期刊,交给名单中的第一名员工。员工应在 3 个工作日内完成阅读,员工阅读完毕后通知

    7、系统,系统提醒下一位阅读者取书,下一个员工必须确认已收到期刊。当传阅名单中“下一位”员工出差在外时将无法进行传阅,此时将期刊传给再下一位,而将该员工做标记,再次传递此书时优先考虑该员工。最后一位员工阅读完毕后,将期刊交还图书室以便共用。系统能在员工忘记传递期刊时发出提醒信息。系统详细记录期刊传阅情况,当员工阅读完后通知系统,系统记录该员工的员工号及日期,并在备注栏注明是传出;同样,当员工收到期刊后给系统收书确认,系统记录该员工的员工号及日期,并在备注栏注明是收到。公司的员工都有一个唯一的员工号。公司订阅了多种期刊,为每一本期刊(有唯一期刊流水号)产生一份传阅名单,并详细记录传阅情况。员工的出差

    8、情况存储在系统主机中。该系统采用面向对象方法开发,系统中的类及类之间的关系用 UML 类图表示,图 9-4 是该系统的类图的一部分,图 9-5 描述了成功传递期刊的序列图。(分数:15.00)(1).【问题 1】根据题意,给出类“传阅记录”的主要属性。(分数:5.00)_(2).【问题 2】根据题意,将图 9-5 中的(1)(5)处补充完整。(分数:5.00)_(3).【问题 3】同一种期刊分不同的期,所以有多本同一种期刊。“传阅名单”只需每一种期刊一份,还是应该每本期刊一份?为什么?(分数:5.00)_四、试题四(总题数:1,分数:15.00)1.【说明】假定用一个整型数组表示一个长整数,数

    9、组的每个元素存储长整数的一位数字,则实际的长整数 m 表示为:m=ak10k-2+ak-110k-3+a310+a2其中 a1保存该长整数的位数,a0保存该长整数的符号:0 表示正数,1 表示负数。运算时先决定符号,再进行绝对值运算。对于绝对值相减情况,总是绝对值较大的减去绝对值较小的,以避免出现不够减的情况。注:不考虑溢出情况,即数组足够大。【函数】int cmp(int *LA, int *LB);/*比较长整数 LA 与 LB 的绝对值大小*/*若 LA 绝对值较大返回正值,LA 较小返回负值,相等则返回 0*/int ADD(int *LA, int*LB, int *LC)/*计算长

    10、整数 LA 与 LB 的和,结果存储于 LC 中*/*注意:正数与负数的和相当于正数与负数绝对值的差*/*数据有误返回 0,正常返回 1*/if(LA=NULL | LB=NULL | LC=NULL)return 0;int *pA, *pB,i,N,carry,flag;flag=LA0+LB0;switch(flag)/*根据参与运算的两个数的符号进行不同的操作*/case 0:case 2:LC0=LA0;/*LA 与 LB 同号,结果符号与 LA(LB)相同*/pA=LA;pB=LB;(1) ;break;case 1:/*LA 与 LB 异号*/*比较两者的绝对值大小,结果符号与较

    11、大者相同*/flag= (2) ;if(flag0)/*LA 较大*/LC0=LA0;pA=LA;pB=LB;else if(flag0)/*LB 较大*/LC0=LB0;pA=LB;pB=LA;else/*LA 与 LB 相等*/LC0=0;LC1=0;return 1;flag=-1;break;default:return 0;break;/*switch*/*绝对值相加减*/*注意对于减法 pA 指向较大数,pB 指向较小数,不可能出现不够减的情况*/(3) ;N=LA1LB1?LA1:LB1;for(i=0;iN;i+)if(i=pA1)/*LA 计算完毕*/carry+=flag

    12、*pBi+2;else if(i=pB1)/*LB 计算完毕*/carry +=pAi+2;elsecarry +=pAi+2+flag *pBi+2;LCi+2=Carry%10;carry /=10;if( (4) )/*需要借位,针对减法*/LCi+2+=10;carry-;/*for*/if( (5) )/*最高进位,针对加法*/LCi+2=carry;i+;if(LCi+1=0)i-;严若最高位为零,针对减法*/LC1=i;return 1;/*ADD*/(分数:15.00)_五、试题五(总题数:1,分数:15.00)2.【说明】现要编写一个画矩形的程序,目前有两个画图程序:DP1

    13、和 DP2,DP1 用函数draw_a_line(x1,y1,x2,y2)画一条直线,DP2 则用 drawline(x1,x2,y1,y2)画一条直线。当实例画矩形时,确定使用 DP1 还是 DP2。为了适应变化,包括“不同类型的形状”和“不同类型的画图程序”,将抽象部分与实现部分分离,使它们可以独立地变化。这里,“抽象部分”对应“形状”,“实现部分”对应“画图”,与一般的接口(抽象方法)与具体实现不同。这种应用称为 Bridge(桥接)模式。图 9-6 显示了各个类间的关系。(分数:15.00)_六、试题六(总题数:1,分数:15.00)3.【说明】现要编写一个画矩形的程序,目前有两个画图

    14、程序:DP1 和 DP2,DP1 用函数 draw_a_line(x1, y1,x2,y2)画一条直线,DF2 则用 drawline(x1,x2,y1,y2)画一条直线。当实例画矩形时,确定使用DP1 还是 DP2。为了适应变化,包括“不同类型的形状”和“不同类型的画图程序”,将抽象部分与实现部分分离,使它们可以独立地变化。这里,“抽象部分”对应“形状”,“实现 部分”对应“画图”,与一般的接口(抽象方法)与具体实现不同。这种应用称为 Bridge(桥接)模式。图 9-7 显示了各个类间的关系。(分数:15.00)_中级软件设计师下午试题-84 答案解析(总分:98.01,做题时间:90 分

    15、钟)一、试题一(总题数:1,分数:23.00)【说明】图书管理系统旨在用计算机对图书进行管理,包括图书的购入、借阅、归还及注销。管理人员可以查询某位读者、某种图书的借阅情况,还可以对当前图书借阅情况进行一些统计,给出统计表格,以便掌握图书的流通情况。系统要实现以下 4 方面的功能:购入新书、读者借书、读者还书及图书注销。(1)购入新书:需要为该书编制图书卡片,包括分类目录号、图书流水号(要保证每本书都有唯一的流水号,即使同类图书也是如此)、书名、作者、内容摘要、价格和购书日期等信息,写入图书目录文件中。(2)读者借书:填写借书单,包括读者号、欲借图书分类目录号,系统首先检查该读者号是否有效,若

    16、无效,则拒绝借书,否则进一步检查该读者所借图书是否超过最大限制数,若已达到最大借阅数,则拒绝借书,否则读者可以借出该书,登记图书分类目录号、图书流水号、读者号和借阅日期等,写回到借书文件中去。(3)读者还书:根据图书流水号,从借书文件中读出和该图书相关的借阅记录,表明还书日期,再写回借书文件中;如果图书逾期未还,则处以相应罚款。(4)图书注销:将一些过时或无保留价值的图书注销,从图书文件中删除相关记录。(5)流通查询:管理员可以对图书流通情况进行查询,包括某位读者、某种图书和全部图书,给出流通情况统计表。以下是经分析得到的数据流图及部分数据字典,有些地方有待填充,假定顶层数据流图是正确的。如图

    17、9-1 所示是顶层数据流图,如图 9-2 所示是第 0 层数据流图,如图 9-3 所示是第 1 层数据流图。(分数:23.01)(1).【问题 1】根据题意,指出数据流图中缺失的数据流(a)的名称,并指出该数据流的起点。(分数:7.67)_正确答案:(名称:当前日期,起点:系统时钟。)解析:分析 加工 2 的输入数据流有“当前日期”和“有效的图书管理要求”。根据平衡原则,加工2.1 的输入数据流(a)应为“当前日期”,其起点自然是“系统时钟”。(2).【问题 2】将下述文件正确填充在数据流图(b)、(c)处:读者文件、借书文件。(分数:7.67)_正确答案:(b)读者文件 (c)借书文件)解析

    18、:分析 加工 3.2“读者查询”需要“借书文件”及“读者文件”,而加工 3.3“图书查询”与“读者文件”不相关,因此 b 处应填“读者文件”,c 处应填“借书文件”。_解析:分析 根据说明“填写借书单,包括读者号、欲借图书分类目录号”可得,借书单应包括“读者号”和“图书分类号”。故 d 应填“分类目录号”。还书时是根据“图书流水号”的,因此还书单应包括“图书流水号”。故 e 应填图书流水号。“目录文件”存储图书的情况,包括分类目录号、图书流水号、书名、作者、内容摘要、价格,可见“目录文件”需要存储图书流水号,而且“一种”书有多个副本,因此 f 应填图书流水号。注意,大括号二、试题二(总题数:1

    19、,分数:15.00)【说明】关于一位花商有以下一些事实。(1)销售在不同地区生长的花,这些地区一年的最低气温在一定范围内变化。(2)想用编号来表示发货类型。(3)要出售某些类型的花。假定已经通过 SQL 语句建立了基本表:CREATE TABLE Zone(ID CHAR(2) PRIMARY KEY,LowerTemp NUMERIC(3),UpperTemp NUMERIC(3);CREATE TABLE Delivery(ID CHAR (2) PRIMARY KEY,Category CHAR(5),DelSize NUMERIC(5,3);CREATE TABLE FlowerInf

    20、o(ID CHAR (3),ComName CHAR(25),LatName CHAR(30),Czone NUMERIC(3),Hzone NUMERIC(3),Delivered NUMERIC(3),SunNeed CHAR(3),PRIMARY KEY(ID);地区(ID,最高温度,最低温度)发货(ID,发货类型,发货规格)花的信息(ID,普通名,拉丁名,花能够生长的最冷地区,花能够生长的最热地区,发货类型,日光需求)(分数:15.00)(1).【问题 1】写出 SQL 语句,将记录(ID,Category=pot,DelSize=1.5)插入 Delivery 表中。(分数:5.00

    21、)_正确答案:(INSEllT INTO Delively(ID, Category, DelSize)VALLIES(1,pot,1.5)解析:分析 插入记录用 INSERT 语句,其基本格式如下:INSERT INTO 基本表名(字段名,字段名)VALUES(常量,常量)据此易得对应的 SQL 语句为:INSERT INTO Delivery(ID, Category, DelSize) VALUES(1,pot,1.5)(2).【问题 2】写出 SQL 语句实现如下功能:查询以花瓶(pot)形式发货的所有鲜花的 ID、普通名及花瓶的规格,得到结果表按照普通名的字母逆序打印。(分数:5.0

    22、0)_正确答案:(SELECT FlowerInfo.ID,FlowerInfo.ComName,Delivery.DelSizeFROM FlowerInfo AS F,Delivery AS DWHERE F.Delivemd=D.id AND D.Category=potORDER BY F.ComName DESC)解析:分析 本题是考查 SQL 查询语句,在此需要用到两个表:delively 和 flowerinfo,需要将其正确连接起来。查询 SELECT 语句的基本格式如下:SELECT ALL|DISTINCT目标列表达式,目标列表达式FROM表名或视图名,表名或视图名WHER

    23、E条件表达式GROUP BY列名 1HAVING条件表达式ORDER BY列名 2ASC|DESC据此,根据题意可得相应的 SQL 查询语句为:SELECT FlowerInfo.ID, HowerInfo. ComName, DeliVery.DelSizeFROM FlowerInfoAS F, Delivery AS DWHERE F.Delivered=D.id AND D.Category=potORDER BY F.ComName DESC(3).【问题 3】写出如下 SQL 实现语句。(1)把对表 Zone 的 INSERT 权限授予用户 Smith,并允许它再将此权限授予他人。

    24、(2)收回已经授予 Tom 的对表 FlowerInfo 中属性 ComName 的修改权限。(3)建立视图 viewpot,表现问题 2 的功能。(分数:5.00)_正确答案:(1) GREANT INSERT ON TABLE Zone TO Smith WITH GRANT OPTION(2) REVOKE UPDATE(ComName)ON TABLE FlowerInfo FROM Tom(3) CREATE VIEW Viewpot(ID,ComName, DeISize)ASSELECT FlowerInfo.ID,FlowerInfo.ComName,Delivery.DelS

    25、izeFROM FlowerInfo AS F, Delivery AS DWHERE F.Delivered=D.id AND D.Category=potORDER BY F.ComName DESC)解析:分析 SQL 语言中的数据控制语句有授权(GRANT)和收获权限(REVOKE),其基本格式分别如下:GRANT权限,权限ON对象类型对象名TO用户,用户WHERE GRANT OPTIONREVOKE权限,权限ON对象类型对象名FROM用户,用户据此可得问题(1)对应的 SQL 语句为 GREANT INSERT ON TABLE Zone TO Smith WITH GRANT O

    26、PTION;问题(2)对应的 SQL 语句为 REVOKE UPDATE(ComName)ON TABLE FlowerInfO FROM Tom。问题(3)是创建视图,用 CREATE VIEW 语句实现,其基本格式为:CREATE VIEW 视图名(列表名)AS SELECT 查询子句WITH CHECK OPTION根据题意可得对应的 SQL 语句为:CREATE VIEW Viewpot(ID,ComName,DelSize)ASSELECT FlowerInfo.ID,FlowerInfo.ComName,Delively.DelSizeFROM FlowerInfo AS F,De

    27、livery AS DWHERE F.Delivered=D.id AND D.Category=potORDER BY F.ComName DESC三、试题三(总题数:1,分数:15.00)【说明】公司 IT 部门决定开发一个计算机管理系统以记录期刊的传阅情况。期刊在公司内部传阅,员工可以要求加入传阅队列。图书室登记公司收到的期刊,交给名单中的第一名员工。员工应在 3 个工作日内完成阅读,员工阅读完毕后通知系统,系统提醒下一位阅读者取书,下一个员工必须确认已收到期刊。当传阅名单中“下一位”员工出差在外时将无法进行传阅,此时将期刊传给再下一位,而将该员工做标记,再次传递此书时优先考虑该员工。最

    28、后一位员工阅读完毕后,将期刊交还图书室以便共用。系统能在员工忘记传递期刊时发出提醒信息。系统详细记录期刊传阅情况,当员工阅读完后通知系统,系统记录该员工的员工号及日期,并在备注栏注明是传出;同样,当员工收到期刊后给系统收书确认,系统记录该员工的员工号及日期,并在备注栏注明是收到。公司的员工都有一个唯一的员工号。公司订阅了多种期刊,为每一本期刊(有唯一期刊流水号)产生一份传阅名单,并详细记录传阅情况。员工的出差情况存储在系统主机中。该系统采用面向对象方法开发,系统中的类及类之间的关系用 UML 类图表示,图 9-4 是该系统的类图的一部分,图 9-5 描述了成功传递期刊的序列图。(分数:15.0

    29、0)(1).【问题 1】根据题意,给出类“传阅记录”的主要属性。(分数:5.00)_正确答案:(“传阅记录”属性:期刊流水号、员工号、日期、备注。)解析:分析 根据传阅描述,传阅时需记录员工号、日期及传入/传出。故“传阅记录”应有属性:员工号、日期、备注。每一本“期刊”有一份“传阅记录”,因此“传阅记录”还应有属性:期刊流水号。(2).【问题 2】根据题意,将图 9-5 中的(1)(5)处补充完整。(分数:5.00)_正确答案:(1)通知系统 (2)读取下一位阅读者 (3)读取员工状态(4)提醒取书 (5)添加传阅记录)解析:分析 根据期刊传阅过程的描述,员工阅读完毕“通知系统”,系统“添加传

    30、阅记录”,并从“传阅名单”中“读取下一位阅读者”,然后“读取员工状态”,若该员工可传,“提醒取书”,员工收到期刊后向系统确认,系统“添加传阅记录”。(3).【问题 3】同一种期刊分不同的期,所以有多本同一种期刊。“传阅名单”只需每一种期刊一份,还是应该每本期刊一份?为什么?(分数:5.00)_正确答案:(“传阅名单”应该每一本期刊一份,以便当员工出差时正确做标记,保证正确传递。)解析:分析 “当传阅名单中下一位员工出差在外时将无法进行传阅,此时将期刊传给再下一位,而将该员工做标记,再次传递此书时优先考虑该员工。”仔细分析 该句题设,不难发现,“传阅名单”应该每一本期刊一份,如果一种期刊一份,则

    31、没法做标记,当员工出差时将无法正确传递。四、试题四(总题数:1,分数:15.00)1.【说明】假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数 m 表示为:m=ak10k-2+ak-110k-3+a310+a2其中 a1保存该长整数的位数,a0保存该长整数的符号:0 表示正数,1 表示负数。运算时先决定符号,再进行绝对值运算。对于绝对值相减情况,总是绝对值较大的减去绝对值较小的,以避免出现不够减的情况。注:不考虑溢出情况,即数组足够大。【函数】int cmp(int *LA, int *LB);/*比较长整数 LA 与 LB 的绝对值大小*/*若 LA 绝对

    32、值较大返回正值,LA 较小返回负值,相等则返回 0*/int ADD(int *LA, int*LB, int *LC)/*计算长整数 LA 与 LB 的和,结果存储于 LC 中*/*注意:正数与负数的和相当于正数与负数绝对值的差*/*数据有误返回 0,正常返回 1*/if(LA=NULL | LB=NULL | LC=NULL)return 0;int *pA, *pB,i,N,carry,flag;flag=LA0+LB0;switch(flag)/*根据参与运算的两个数的符号进行不同的操作*/case 0:case 2:LC0=LA0;/*LA 与 LB 同号,结果符号与 LA(LB)相

    33、同*/pA=LA;pB=LB;(1) ;break;case 1:/*LA 与 LB 异号*/*比较两者的绝对值大小,结果符号与较大者相同*/flag= (2) ;if(flag0)/*LA 较大*/LC0=LA0;pA=LA;pB=LB;else if(flag0)/*LB 较大*/LC0=LB0;pA=LB;pB=LA;else/*LA 与 LB 相等*/LC0=0;LC1=0;return 1;flag=-1;break;default:return 0;break;/*switch*/*绝对值相加减*/*注意对于减法 pA 指向较大数,pB 指向较小数,不可能出现不够减的情况*/(3)

    34、 ;N=LA1LB1?LA1:LB1;for(i=0;iN;i+)if(i=pA1)/*LA 计算完毕*/carry+=flag *pBi+2;else if(i=pB1)/*LB 计算完毕*/carry +=pAi+2;elsecarry +=pAi+2+flag *pBi+2;LCi+2=Carry%10;carry /=10;if( (4) )/*需要借位,针对减法*/LCi+2+=10;carry-;/*for*/if( (5) )/*最高进位,针对加法*/LCi+2=carry;i+;if(LCi+1=0)i-;严若最高位为零,针对减法*/LC1=i;return 1;/*ADD*/

    35、(分数:15.00)_正确答案:(1) flag=1(2) cmp(LA,LB)(3) carry=0(4) LCi+20(5) carry)解析:分析 先来看空(2),依据注释此处是比较 LA 与 LB 绝对值的大小,参照 cmp 函数说明及声明,应填 cmp(LA,LB)。空(3)以下进行绝对值相加减。carry+=pAi+2+flag*pBi+2;可见,carry 需要进行初始化,故空(3)应填 carryy=0。仔细分析 该计算式,可知 flag 是符号,flag 为 1 时,计算 pA+pB,flag 为-1 时,计算pA-pB。由此也推断出空(1)应填 flag=1。case 1

    36、中亦有对应语句 flag=-1 可得验证。由注释可见空(4)要填需要借位的条件。当不够减时需要向高一位借位,也就是不借位时相减结果是负数。因此空(4)应填 LCi+20。同(4),空(5)要填需要有最高进位的条件。carry 变量表示的就是进位。因此空(5)应填 carry(或 carry !=0)。注:此处 carry 不可能为负数。五、试题五(总题数:1,分数:15.00)2.【说明】现要编写一个画矩形的程序,目前有两个画图程序:DP1 和 DP2,DP1 用函数draw_a_line(x1,y1,x2,y2)画一条直线,DP2 则用 drawline(x1,x2,y1,y2)画一条直线。

    37、当实例画矩形时,确定使用 DP1 还是 DP2。为了适应变化,包括“不同类型的形状”和“不同类型的画图程序”,将抽象部分与实现部分分离,使它们可以独立地变化。这里,“抽象部分”对应“形状”,“实现部分”对应“画图”,与一般的接口(抽象方法)与具体实现不同。这种应用称为 Bridge(桥接)模式。图 9-6 显示了各个类间的关系。(分数:15.00)_正确答案:(1) abstract(2) DP2.drawline(x1,x2,y1,y2)(3) Drawing(4) _dp.drawLine(x1,y1,x2,y2)解析:分析 由类 Drawing 的 drawLine()方法是 abstr

    38、act 的,因此 Drawing 要么是接口,要么是抽象类,在此为抽象类,故空(1)应填 abstract。空(2)是调用 DP2 系统的相应方法,可参照 DP1 的对应函数的函数体,但要注意参数不完全相同,应填DP2.drawline(x1,x2,y1,y2)。_dP 属性是用来存储 Drawing 对象的,参照 Shape 的构造函数可确认这一点,空(3)应填 Drawing。Shape 类的 drawLine 方法是通过调用 Drawing 对应的方法来实现所需要的功能,因此空(4)应填_dp.drawLine(x1,y1,x2,y2)。空(5)显然是基类构造函数,应填 super(dp

    39、)。(5) super(dp)六、试题六(总题数:1,分数:15.00)3.【说明】现要编写一个画矩形的程序,目前有两个画图程序:DP1 和 DP2,DP1 用函数 draw_a_line(x1, y1,x2,y2)画一条直线,DF2 则用 drawline(x1,x2,y1,y2)画一条直线。当实例画矩形时,确定使用DP1 还是 DP2。为了适应变化,包括“不同类型的形状”和“不同类型的画图程序”,将抽象部分与实现部分分离,使它们可以独立地变化。这里,“抽象部分”对应“形状”,“实现 部分”对应“画图”,与一般的接口(抽象方法)与具体实现不同。这种应用称为 Bridge(桥接)模式。图 9-

    40、7 显示了各个类间的关系。(分数:15.00)_正确答案:(1) virtual(2) DP2:drawline(x1,x2,y1,y2)(3) Drawing(4) _dp-drawLine(x1,y1,x2,y2)(5) Shape(dp)解析:分析 由函数 drawLine()结尾的“=0”易知,空(1)应填 virtual。空(2)是调用 DP2 系统的相应方法,可参照 DP1 的对应函数的函数体,但要注意参数不完全相同,应填DP2:drawline(x1,x2,y1,y2)。_dp 属性是用来存储 Drawing 对象的,参照 Shape 的构造函数可确认这一点,空(3)应填 Drawing*。Shape 类的 drawLine 方法是通过调用 Drawing 对应的方法来实现所需要的功能,因此空(4)应填_dp-drawLine(x1,y1,x2,y2)。空(5)显然是基类构造函数,应填 Shape(dp)。


    注意事项

    本文(【计算机类职业资格】中级软件设计师下午试题-84及答案解析.doc)为本站会员(boatfragile160)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开