一起答

软件水平考试(中级)软件设计师下午(应用技术)试题模拟试卷40

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 请阅读以下技术说明、类图及Java代码,根据要求将(1)~(5)空缺处的内容填写完整。

      [说明]

     已知对某载客车辆(Car)进行类建模,如图4-20所示,其中类Engine表示发动机引擎,类Wheel表示车轮,类Body表示车身,类Driver表示司机,类Passenger表示乘客。

  2. 请阅读以下技术说明、类图及C++代码,根据要求将(1)~(5)空缺处的内容填写完整。

      [说明]

     已知对某载客车辆(Car)进行类建模,如图4-19所示。其中,类Engine表示发动机引擎,类Wheel表示车轮,类Body表示车身,类Driver表示司机,类Passenger表示乘客。

     

     [C++代码]

     

       car.run();

       }

  3. 假设《应试捷径——典型考题解析与考点贯通_系统分析师考试》书籍标准书号前9个数字为 7-121-04715,请写出其对应的校验码。

  4. 阅读以下算法说明和C程序,根据要求回答问题1至问题2。

      [说明]

     [算法4-1]的功能是:用来检查文本文件中的圆括号是否匹配。若文件中存在圆括号没有对应的左括号或者右括号,则给出相应的提示信息,如图4-18所示。

     

     在[算法4-1]中,stack为一整数栈。算法中各函数的说明如表4-16所示。

    [算法4-1] 将栈stack置空,置EOF为false

    为了识别更多种类的括号,对[算法4-1]加以改进后得到[算法4-2]。[算法4-2]能够识别圆括号、方括号和花括号(不同类型的括号不能互相匹配)。改进后,函数kind(charch)的参数及其对应的返回值如表4-17所示。

    [算法4-2]

    [问题1]

     请将[算法4-1]和[算法4-2]中,(1)~(7)空缺处的内容补充完整。

     [问题2]

     请从以下选项中选择相应的判断逻辑填补[算法4-2]中的“判断条件1”至“判断条件3”。注意,若“判断条件2”的逻辑判断结果为假,就无需对“判断条件3”进行判断。

     判断条件1: (8) 

     判断条件2: (9) 

     判断条件3: (10) 

     [供选择的答案]

     A.栈顶元素表示的是与当前字符匹配的左括号

     B.栈顶元素表示的是与当前字符匹配的右括号

     C.字符是左括号  D.字符是右括号  E.栈不空  F.栈空

     G.字符是括号

  5. 阅读以下标准书号校验码的技术说明和程序流程图,根据要求回答问题1至问题3。

     [说明]

     为实现图书的国际统一编码,便于实现计算机化的图书管理,每本正式出版的图书都印有国际标准书号。标准书号由“ISBN”、10个数字(0~9)组成,其格式如下。

     ISBN 组号-出版者号-书名号-校验码

     其中,校验码是根据前面9个数字计算得到的,用于计算机自动校验。假设标准书号的10个数字依次是a(1),a(2),…,a(10),则校验码a(10)的设置应使S=10*a(1)+9*a(2)+8*a(3)+…+1*a (10)能被11整除。如果校验码a(10)应设置成10,则规定以“X”表示之。

     例如,《软件设计师考试考前冲刺预测卷及考点解析》的标准书号为:ISBN7-121-05027-5。第1段上的数字“7”是国际ISBN中心分配给中国ISBN中心管理的组号;第2段上的“121”表示电子工业出版社。标准书号的校验过程如图5-13所示,计算校验码的过程如图5-14所示。其中,Mod(S,11)表示S除以11得到的余数。

    请根据标准书号校验码的技术说明,将图5-13和图5-14程序流程图中(1)~(4)空缺处的内容填补完整。

  6. 图5-13(或图5-14)中Mod(S,11)表示S除以11得到的余数。以下[C程序]实现不使用求余计算符号“%”,求取被除数p和除数q之间的余数。

     [C程序]

  7. 根据说明中的叙述,抽象出如表5-21所示的方法。

    请指出图5-12中,类CustomerInformationSystem应具有的方法:(9);类InstitutionalCustomer应具有的方法:(10)。

  8. 关联(Association)和聚集(Aggregation)是UML中两种非常重要的关系。请用150字以内的文字简要说明关联和聚集的关系,并说明其不同之处。

  9. 该数据库系统在设计时,采用了异构数据库技术。请给出目前3种通用的异构数据库查询技术。

     [附]

     关系模式的标记规则如下

     关系名(属性名1,属性名2,…,属性名n)

     其中:①若该属性仅为主键属性时,则该属性名下画实下画线;

     ②若该属性仅为外键属性时,则该属性名下画虚下画线;

     ③若该属性既是主键属性,又是外键属性时,则在该属性名下画实下画线和虚下画线;

     ④若该属性既不是主键属性,又不是外键属性时,则在该属性名下不做标记。

  10. 识别关联的多重度是面向对象建模过程中的一个重要步骤。根据说明中给出的描述,请将图5-12中 (3)~(8)空缺处的内容填写完整。

  11. 阅读以下UML类图及其说明,根据要求回答问题1~问题4。

     [说明]

     某客户信息管理系统中保存着两类客户的信息:

     ①个人客户。对于这类客户,系统保存了其客户标识(由系统生成)和基本信息(包括姓名、住宅电话和E-mail)。

     ②集团客户。集团客户可以创建和管理自己的若干名联系人。对于这类客户,系统除了保存其客户标识(由系统生成)之外,也保存了其联系人的信息。联系人的信息包括姓名、住宅电话、E-mail、办公电话以及职位。

     该系统除了可以保存客户信息之外,还具有以下功能:

     ①向系统中添加客户(addCustomer);

     ②根据给定的客户标识在系统中查找该客户(getCustomer);

     ③根据给定的客户标识从系统中删除该客户(removeCustomer);

     ④创建新的联系人(addContact);

     ⑤在系统中查找指定的联系人(getContact);

     ⑥从系统中删除指定的联系人(removeContact)。

     该系统采用面向对象方法进行开发。在面向对象分析阶段,根据上述描述,得到如表5-20所示的类。

    描述该客户信息管理系统的UML类图如图5-12所示。

    根据上述描述,图5-12中类Customer的属性是(1);类Person的属性是(2)。  

    (1) A.客户标识  B.姓名、住宅电话、E-mail  C.客户标识、办公电话、职位  D.姓名、住宅电户、办公电话、E-mail、职位  

    (2) A.客户标识

    B.姓名、住宅电话、E-mail

    C.客户标识、办公电话、职位

    D.姓名、住宅电户、办公电话、E-mail、职位

  12. 查询每个部门中月工资最高的“职工号”的SQL查询语句如下。

     

     (1)请用30字以内文字简要说明该查询语句对查询效率的影响。

     (2)对该查询语句进行修改,使它既可以完成相同功能,又可以提高查询效率。

  13. 假定分别在“职工”关系中的“年龄”和“月工资”字段上创建了索引,如下的Select查询语句可能不会促使查询优化器使用索引,从而降低查询效率,请写出既可以完成相同功能又可以提高查询效率的 SQL语句。

  14. 阅读以下某工厂人事信息管理系统数据库的设计说明,根据要求回答问题1~问题4。

     [说明]

     某工厂有多个部门,每个部门有多位职工,每位职工属于并且仅属于一个部门,每个部门有一位负责人,每个办公室有一部电话。每位职工的月工资大致是:800≤月工资≤4500元。

     软件开发公司A为该工厂开发的信息管理数据库的部分关系模式如下所示。

     职工(职工号,姓名,年龄,月工资,部门号,电话,办公室)

     部门(部门号,部门名,负责人代码,任职时间)

     其中“职工”和“部门”的关系示例分别见表5-17和表5-18。

    请使用“关系模式标记规则”(见本题附录),给出上述各关系模式的主键和外键。

  15. 对于表5-17和表5-18所示的“职工”和“部门”关系,请指出表5-19中第①、②和③行是否允许插入?请分别用100字以内的文字简要说明理由。

  16. 请将以下与租赁者信息相关的数据字典条目补充完整。

     登录信息=租赁者ID+密码

     注册信息=(9) 

     租赁者信息=(10)

  17. 该房屋租赁服务系统第0层数据流图(见图5-11)中缺失了一些数据流,请指出所缺失数据流的名称、起点和终点。

  18. 请使用[说明]中给出的词汇,将该房屋租赁服务系统第0层数据流图(见图5-11)中的(5)~(8)空缺处的数据存储补充完整。

  19. 阅读以下某房屋租赁服务系统的技术说明和数据流图,根据要求回答问题1~问题4。

     [说明]

     某房屋租赁公司欲建立一个房屋租赁服务系统,统一管理房主和租赁者的信息,从而快速地提供租赁服务。该系统具有以下功能。

     (1)登记房主信息:对于每名房主,系统需登记其姓名、住址和联系电话,系统还将为其分配一个唯一的身份标识(ID)和密码,并将这些信息写入房主信息文件。

     (2)登记房屋信息:所有在系统中登记的房屋都有一个唯一的识别号(对于新增加的房屋,系统会自动为其分配一个识别号)。除此之外,还需登记该房屋的地址、房型(如平房、带阳台的楼房、独立式住宅等)、最多能够容纳的房客数、租金及房屋状态(待租赁、已出租)。这些信息都保存在房屋信息文件中。一名房主可以在系统中登记多个待租赁的房屋。

     (3)收取手续费:房主登记完房屋后,系统会生成一份费用单,房主根据费用单交纳相应的费用。

     (4)登记租赁者信息:所有想通过该系统租赁房屋的租赁者,必须首先在系统中登记个人信息,租赁者信息包括姓名、现住址、电话号码、出生年月、性别,以及系统分配的唯一身份标识(ID)和密码。这些信息都保存在租赁者信息文件中。

     (5)租赁房屋:已经登记在系统中的租赁者,可以得到一份系统提供的待租赁房屋列表。一旦租赁者从中找到合适的房屋,就可以提出看房请求。系统将安排租赁者与房主见面的时间和地点,并将见面信息(包含见面双方的基本信息)通知租赁者和房主。对于每次看房,系统会生成一条看房记录并将其写入看房记录文件中。

     (6)变更房屋状态:当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态的请求。系统将根据房主的请求,修改房屋信息文件。

     该房屋租赁服务系统的顶层数据流图如图5-10所示,图5-11是其第0层数据流图。

    请使用[说明]中给出的词汇,将该房屋租赁服务系统顶层数据流图(见图5-10)中(1)~(4)空缺处的数据流补充完整。