2016年上半年软件设计师考试真题(上午题)自己做...

何必呢

来自: 何必呢(来之不易 愈加珍惜 拯救自己) 2016-11-08 13:04:18

标题:2016年上半年软件设计师考试真题(上午题)自己做的答案
  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-08 13:10:49

    2.主存与Cache的地址映射方式中,(2)方式可以实现主存任意一块装入Cache中任意位置,只有装满才需要替换。A.全相联B.直接映射C.组相联D.串并联

    主要有三种地址映射方式,分别为全相联映射、直接相联映射和组相联映射

    全相联映射是指主存中任一块都可以映射到Cache中任一块的方式,也就是说,当主存中的一块需调入Cache时,可根据当时Cache的块占用或分配情况,选择一个块给主存块存储,所选的Cache块可以是Cache中的任意一块。例如,设Cache共有2C块,主存共有2M块,当主存的某一块j需调进Cache中时,它可以存入Cache的块0、块1、…、块i、… 或块2C -1的任意一块上。

    直接相联映射是一种多对一的映射关系,但一个主存块只能拷贝到cache的一个特定行位置上去。 cache的行号i和主存的块号j有如下函数关系:?i=j mod m (m为cache中的总行数)? 直接映射方式的优点是硬件简单,成本低。 缺点是每个主存块只有一个固定的行位置可存放,容易产生冲突。因此适合大容量cache采用。

    3. 组相联映射

    以上两种方式各有优缺 点,而且非常有趣的是,它们的优缺点正好相反,也就是说,对于全相联映射方式来说为优点的恰是直接相联映射方式的缺点,而对于全相联映射方式来说为缺点的 恰是直接相联映射方式的优点。那么,可否找到一种能较好地兼顾这两种方式的优点的映射方式呢?下面我们就来看看组相联映射方式 在这种方式下,将Cache分成2u组,每组包含2v块。主存的块与Cache的组之间采用直接相联映射,而与组内的各块则采用全相联映射。也就是说,主存的某块只能映射到Cache的特定组中的任意一块。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-08 16:06:45

    ●如果“2X”的补码是“90H”,那么X的真值是(3)。
      A.72
      B.-56
      C.56
      D.1 1 1

    56

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-08 16:07:34

    ●移位指令中的(4)指令的操作结果相当于对操作数进行乘2操作。
      A.算术左移
      B.逻辑右移
      C.算术右移
      D.带进位循环左移

    算术左移

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-08 16:07:56

    内存按字节编址,从A1000H到B13FFH的区域的存储容量为(5)KB

    65

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-08 16:08:13

    ●以下关于总线的叙述中,不正确的是(6)。
      A.并行总线适合近距离高速数据传输
      B.串行总线适合长距离数据传输
      C.单总线结构在一个总线上适应不同种类的设备,设计简单且性能很高
      D.专用总线在设计上可以与连接设备实现最佳匹配

    C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-08 16:21:50

    ●以下关于网络层次与主要设备对应关系的叙述中,配对正确的是(7)。
      A.网络层——集线器
      B.数据链路层——网桥
      C.传输层——路由器
      D.会话层——防火墙

    B

    网线,集线器----物理层
    网卡,网桥----数据链路
    路由器-----网络层

    交换机就是用来进行报文交换的机器.它和HUB最重要的区别就HUB是物理层设备,采用广播的形式来传输信息,交换机多为链路层设备(二层交换机,也有三层-网络层,四层-传输层交换机),能够进行地址学习,采用存储转发的形式来交换报文.它和路由器的区别在于路由器有DDN,ADSL等接口,交换机只有以太网接口

    物理层 设备 HUB
    数据链路层 设备 二层交换机
    网络层 设备 三层交换机和路由器
    传输层 设备 防火墙
    会话层表示层应用层 设备 病毒防火墙

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:41:29

    传输经过SSL加密的网页所采用的协议是(8)。
      A.HTTP
      B.HTTPS
      C.S-HTTP
      D.HTTP-S

    B

    同时,Netscape公司相应开发了HTTPS协议并内置于其浏览器中,HTTPS实际上就是HTTP over SSL,它使用默认端口443,而不是像HTTP那样使用端口80来和TCP/IP进行通信。HTTPS协议使用SSL在发送方把原始数据进行加密,然后在接受方进行解密,加密和解密需要发送方和接受方通过交换共知的密钥来实现,因此,所传送的数据不容易被网络黑客截获和解密。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:45:58

    ●为了攻击远程主机,通常利用(9)技术检测远程主状态。
      A.病毒查杀
      B.端口扫描
      C.QQ聊天
      D.身份认证

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:46:38

    软考错题合集之16-05-AM-IT大道 http://www.itdadao.com/articles/c15a688474p0.html

    1.VLIW是超长指令字的简称。

    2.如果2X的补码是“90H”,那么X的真值是72。

    3.为了攻击远程主机,通常利用端口扫描技术检测远程主机状态。

    4.某软件公司参与开发管理系统软件的程序员张某,辞职到另一公司任职,于是该项目负责人将管理系统软件开发者的署名更改为李某(接任张某工作),该项目负责人侵犯了张某开发者身份权(署名权)。

    5.高级程序设计语言实现的编译和解释方式:

    编译是将源程序翻译成可执行的目标代码,并可以进行优化,翻译与执行是分开的;而解释是对源程序的翻译与执行一次性完成,不生成可存储的中间代码。这只是表象,二者最大的区别是:对解释执行而言,程序运行时的控制权在解释器而不在用户程序;对编译执行而言,运行时的控制权在用户程序。

    6.脚本语言是为了缩短传统的编写-编译-链接-运行过程而创建的计算机编程语言。一个脚本通常是解释执行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。

    7.将高级语言源程序转化为一种中间代码是现代编译器的最常见处理方式,常用的中间代码有后缀式、三地址码、树等。

    8.当用户通过键盘或鼠标进入某应用系统时,通常最先获得键盘或鼠标输入信息的是系统调用。

    9.模块A和模块B都访问相同的全局变量和数据结构,则这两个模块之间的耦合类型为公共耦合。

    公共耦合指通过一个公共数据环境相互作用的那些模块间的耦合。公共数据环境可以是全局变量或数据结构,共享的通信,内存的公共覆盖区及任何存储介质上的文件。

    10.仓库风格支持可更改性和可维护性,支持容错性和健壮性,测试简单。包括:数据库系统、超文本系统和黑板系统。

    11.三明治测试策略的优点:

    较早地验证了主要控制和判断点,测试的并行程度高,较少的驱动模块和桩模块的编写工作量。

    12.UML中关联是一个结构关系,描述了一组链,两个类之间可以有多个由不同角色标识的关联。

    13.为图形用户界面(GUI)组件定义不同平台的并行类层次结构,采用外观模式。

    14.因使用大量的对象而造成很大的存储开销时,适合采用享元模式进行对象共享,以减少对象数量从而达到较少的内在占用并提升性能。

    15.移进-归约分析法是编译程序(或解释程序)对高级语言源程序进行语法分析的一种方法,属于自底向上的语法分析方法。

    16.数据的物理独立性和逻辑独立性分别是通过修改模式与内模式之间的映像、外模式与模式之间的映像来完成的。

    17.使用ping命令可以进行网络检测,在进行一系列检测时,按照由近及远原则,首先执行的是(A)

    A.ping 默认网关 B.ping 本地ip C.ping 127.0.0.1 D.ping 远程主机

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:48:44

    ●某软件公司参与开发管理系统软件的程序员张某,辞职到另一公司任职,于是该项目负责人将该管理系统软件上开发者的署名更改为李某(接张某工作)。该项目负责人的行为(10)。
      A.侵犯了张某开发者身份权(署名权)
      B.不构成侵权,因为程序员张某不是软件著作权人
      C.只是行使管理者的权利,不构成侵权
      D.不构成侵权,因为程序员张某现已不是项目组成员

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:52:25

    ●美国某公司与中国某企业谈技术合作,合同约定使用l项美国专利(获得批准并在有效期内),该项技术未在中国和其他国家申请专利。依照该专利生产的产品(11)需要向美国公司支付这件美国专利的许可使用费。
      A.在中国销售,中国企业
      B.如果返销美国,中国企业不
      C.在其他国家销售,中国企业
      D.在中国销售,中国企业不
    D

    国外专利必须在我国申请专利并授予中国专利才能够在中国得到保护
    这是有时间限制的,在该专利没有公开的时候申请,或者自该专利第一次在国外提出申请之日起12个月内在我国申请,或者如果自该专利的国际申请日起32个月内在我国申请。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:54:34

    ●以下媒体文件格式中,(12)是视频文件格式。
      A.WAV
      B.BMP
      C.MP3
      D.MOV

    D

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 10:54:57

    ●以下软件产品中,属于图像编辑处理工具的软件是(13)。
      A.Powerpoint
      B.Photoshop
      C.Premiere
      D.Acrobat

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 11:00:24

    ●使用150DPI的扫描分辨率扫描一幅3×4英寸的彩色照片,得到原始的24位真彩色图像的数据量是(14)Byte。
      A.1800
      B.90000
      C.270000
      D.810000

    试题解析:
    DPI表示单位“像素/英村”,即指每英寸长度内所含有的像素是多少。24位真彩色图像每个像素使用三个字节表示RGB的分量值。
    一幅不经压缩的图像数据量计算公式为:
    字节数=图像水平分辨率x图像垂直分辨率x颜色深度(位数)/8。
    根据题意,450x600x24/8=810 000。
    参考答案:

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-09 11:00:44

    ●某软件公司参与开发管理系统软件的程序员张某,辞职到另一公司任职,于是该项目负责人将该管理 ●某软件公司参与开发管理系统软件的程序员张某,辞职到另一公司任职,于是该项目负责人将该管理系统软件上开发者的署名更改为李某(接张某工作)。该项目负责人的行为(10)。   A.侵犯了张某开发者身份权(署名权)   B.不构成侵权,因为程序员张某不是软件著作权人   C.只是行使管理者的权利,不构成侵权   D.不构成侵权,因为程序员张某现已不是项目组成员 B ... 何必呢

    试题解析:
    署名权,即作者表明自己是开发者身份的权利,署名权包括作者有权决定是否在自己所开发的软件上署名,决定署名形式,诸如真名、笔名、匿名、假名等,同时也有禁止非软件开发者在软件上署名的。
    未经合作开发的人同意,将合作开发的软件当作自己单独开发的软件发表仅署了自己的名字,或者将他人开发的软件当作自己开发的软件署名发表或者涂改他人署名,均侵犯了他人的发表权和署名权。
    参考答案:
    A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 09:57:06

    软件设计师 求完成项目的最少时间是不是就是关键路径

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 10:42:43

    AOV图中的某些活动可以并行的进行,所以完成工程的最少时间是从开始顶点到结束顶点的最长路径长度,称从开始顶点到结束顶点的最长路径为关键路径,关键路径上的活动称为关键活动。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 10:56:20

    软件设计师 求完成项目的最少时间是不是就是关键路径 软件设计师 求完成项目的最少时间是不是就是关键路径 何必呢

    ●某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天),则完成该项目的最少时间为(15)天。活动BD最多可以晚开始(16)天而不会影响整个项目的进度。

    15:22
    16:0因为BD就是关键活动

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 11:11:53

     ●在结构化分析中,用数据流图描述(17)。当采用数据流图对一个图书馆管理系统进行分析时,(18)是一个外部实体。
      (17)A.数据对象之间的关系,用于对数据建模
      B.数据在系统中如何被传送或变换,以及如何对数据流进行变换的功能或子功能,用于对功能建模
      C.系统对外部事件如何响应,如何动作,用于对行为建模
      D.数据流图中的各个组成部分
      (18)A.读者
      B.图书
      C.借书证
      D.借阅

    试题解析:
    数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。
    DFD中的外部实体是本系统外的单位或人员。
    参考答案:
    B A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 12:35:28

    ●软件开发过程中,需求分析阶段的输出不包括(19)。
      A.数据流图
      B.实体联系图
      C.数据字典
      D.软件体系结构图

     软件需求分析就是对开发什么样的软件的一个系统的分析与设想。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。在任何软件或系统开发的初始阶段必须先完全掌握用户需求,以期能将紧随的系统开发过程中哪些功能应该落实、采取何种规格以及设定哪些限制优先加以定位。系统工程师最终将据此完成设计方案,在此基础上对随后的程序开发、系统功能和性能的描述及限制作出定义。

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 12:45:44

    ●以下关于高级程序设计语言实现的编译和解释方式的叙述中,正确的是(20)。
      A.编译程序不参与用户程序的运行控制,而解释程序则参与
      B.编译程序可以用高级语言编写,而解释程序只能用汇编语言编写
      C.编译方式处理源程序时不进行优化,而解释方式则进行优化
      D.编译方式不生成源程序的目标程序,而解释方式则生成

    编译是将源程序翻译成可执行的目标代码,并可以进行优化,翻译与执行是分开的;而解释是对源程序的翻译与执行一次性完成,不生成可存储的中间代码。这只是表象,二者最大的区别是:对解释执行而言,程序运行时的控制权在解释器而不在用户程序;对编译执行而言,运行时的控制权在用户程序。

    编译是在开发期将程序源代码变成直面系统内核的机器码,编译的程序可以在编译器支持的系统平台上运行,在程序的执行期是不依靠其他软件环境的;
    解释的程序则在执行期仍然需要其开发语言的软件环境来对程序进行解释,之后才能被系统底层接受和执行,所以在用户来看,其程序执行效率低,对第三方软件环境依赖程度高。

    B

    下面是关于解释程序和编译程序的叙述,正确的是()
    teyitomi11级分类:汇编语言被浏览1639次2013.04.24请微博专家回答检举
    A.编译程序和解释程度均能产生目标程序
    B.编译程序和解释程度均不能产生目标程序
    C.编译程序能产生程序而解释程序则不能
    D.解释程序对源程序的语句是翻译一条执行一条
    E.编译程序对源程序的语句是编译一条执行一条

    选择C和D。

    A、解释程序

    所谓解释程序是高级语言翻译程序的一种,它将源语言(如BASIC)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。这的确是很方便的,很适合于一些小型机的计算问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并提交执行这一组语句,这就造成很大浪费。

    B、编译程序

    这是一类很重要的语言处理程序,它把高级语言(如FORTRAN、COBOL、Pascal、C等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。

    编译程序工作时,先分析,后综合,从而得到目标程序。所谓分析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配和代码生成。为了完成这些分析综合任务,编译程序采用对源程序进行多次扫描的办法,每次扫描集中完成一项或几项任务,也有一项任务分散到几次扫描去完成的。下面举一个四遍扫描的例子:第一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码优化和存储分配;第四遍扫描做代码生成。

    值得一提的是,大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。

    在实际应用中,对于需要经常使用的有大量计算的大型题目,采用招待速度较快的编译型的高级语言较好,虽然编译过程本身较为复杂,但一旦形成目标文件,以后可多次使用。相反,对于小型题目或计算简单不太费机时的题目,则多选用解释型的会话式高级语言,如BASIC,这样可以大大缩短编程及调试的时间。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 13:39:09

    ●以下关于脚本语言的叙述中,正确的是(21)。
      A.脚本语言是通用的程序设计语言
      B.脚本语言更适合应用在系统级程序开发中
      C.脚本语言主要采用解释方式实现
      D.脚本语言中不能定义函数和调用函数

    脚本语言是解释执行语言。特点是较容易上手,编程功能上相对简单一些。例如:html语言、php语言等。编程语言:例如 C 语言、C# 语言等功能较强大,可以用来开发规模较大的系统软件,或者做系统底层的开发。

    C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 13:39:37

    ●将高级语言源程序先转化为一种中间代码是现代编译器的常见处理方式。常用的中间代码有后缀式、(22)、树等。
      前缀码
      三地址码
      符号表
      补码和移码

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 13:40:01

     ●当用户通过键盘或鼠标进入某应用系统时,通常最先获得键盘或鼠标输入信息的是(23)程序。
      A.命令解释
      B.中断处理
      C.用户登录
      D.系统调用

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 13:42:49

    ●在Windows操作系统中,当用户双击“IMG_20160122_103.jpg”文件名时,系统会自动通过建立的(24)来决定使用什么程序打开该图像文件。
      A.文件
      B.文件关联
      C.文件目录
      D.临时文件

    当CPU(中央处理器)执行一条现行指令的时候,如果外设向CPU发出中断请求,那么CPU在满足响应的情况下,将发出中断响应信号,与此同时关闭中断,表示CPU不在受理另外一个设备的中断。这时,CPU将寻找中断请求源是哪一个设备,并保存CPU自己的程序计数器(PC)的内容。然后,他将转移到处理该中断源的中断服务程序。CPU在保存现场信息,设备服务(如交换数据)以后,将恢复现场信息。在这些动作完成以后,开放中断,并返回到原来被中断的主程序的下一条指令。

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 13:52:16

    ●某磁盘有100个磁道,磁头从一个磁道移至另一个磁道需要6ms。文件在磁盘上非连续存放,逻辑上相邻数据块的平均距离为10个磁道,每块的旋转延迟时间及传输时间分别为100ms和20ms,则读取一个100块的文件需要(25)ms。
      A.12060
      B.12600
      C.18000
      D.186000

    本题主要考查读取磁盘数据的相关知识
    在本题中读取磁盘数据的时间应包括:
    1.找磁道的时间。逻辑上相邻数据块的平均移动距离为10个磁道,那么平均读取一块数据所需要的找磁道时间=10*6=60ms
    2.找块(扇区)时间,即旋转延迟时间。
    3.传输时间。
    按照上面的描述计算,我们可以找到平均一块数据需要的时间为:
    60+100+20=180ms,
    那么读取100块数据需要的时间为100*180=18000ms

    C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 13:53:48

     ●进程P1、P2、P3、P4和P5的前趋图如下图所示:

      若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,则需要设置5个信号S1、S2、S3、S4和S5,且信号量S1~S5的初值都等于零。下图中a和b处应分别填(26);c和d处应分别填写(27);e和f处应分别填写(28)。

      A.V(S1)P(S2)和V(S3)
      B.P(S1)V(S2)和V(S3)
      C.V(S1)V(S2)和V(S3)
      D.P(S1)P(S2)和V(S3)
      (27)A.P(S2)和P(S4)
      B.P(S2)和V(S4)
      C.V(S2)和P(S4)
      D.V(S2)和V(S4)
      (28)A.P(S4)和V(S4)V(S5)
      B.V(S5)和P(S4)P(S5)
      C.V(S3)和V(S4)V(S5)
      D.P(S3)和P(S4)V(P5)

    CBC

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 14:01:27

    ●如下图所示,模块A和模块B都访问相同的全局变量和数据结构,则这两个模块之间的耦合类型为(29)耦合。

      A. 公共
      B.控制
      C.标记
      D.数据

    A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 14:19:59

    ●以下关于增量开发模型的叙述中,不正确的是(30)。
      A.不必等到整个系统开发完成就可以使用
      B.可以使用较早的增量构件作为原型,从而获得稍后的增量构件需求
      C.优先级最高的服务先交付,这样最重要的服务接受最多的测试
      D.有利于进行好的模块划分

    增量模型的优点:(1)采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源;(2)如果核心产品很受欢迎,则可增加人力实现下一个增量;(3)可先发布部分功能给客户,对客户起到镇静剂的作用;(4)优先级最高的服务先交付,这样最重要的服务接受最多的测试。
    增量模型的缺点:(1)并行开发构件有可能遇到不能集成的风险,软件必须具备开放式的体系结构;(2)增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。
    增量模型的使用范围:(1)进行已有产品升级或新版本开发,增量模型是非常适合的;(2)对完成期限严格要求的产品,可以使用增量模型;(3)对所开发的领域比较熟悉而且已有原型系统,增量模型也是非常适合的。

    D?

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 14:28:03

    ●在设计软件的模块结构时,(31)不能改进设计质量。
      A.模块的作用范围应在其控制范围之内
      B.模块的大小适中
      C.避免或减少使用病态连接(从中部进入或访问一个模块)
      D.模块的功能越单纯越好

    信息隐蔽,模块独立,保持模块的大小适中,竟可能减少调用的深度,直接调用该模块的个数应该尽量大但调用其他模块的个数则不宜过大,保证模块是单入口、单出口的,模块的作用域应该在之内,功能应该是可预测的。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 14:38:40

    ●软件体系结构的各种风格中,仓库风格包含一个数据仓库和若干个其他构件。数据仓库位于该体系结构的中心,其他构件访问该数据仓库并对其中的数据进行增、删、改等操作。以下关于该风格的叙述中,不正确的是(32)。(33)不属于仓库风格。
      A.支持可更改性和可维护性
      B.具有可复用的知识源
      C.支持容错性和健壮性
      D.测试简单
      A.数据库系统
      B.超文本系统
      C.黑板系统
      D.编译器

    10.仓库风格支持可更改性和可维护性,支持容错性和健壮性,测试简单。包括:数据库系统、超文本系统和黑板系统。
    B D

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 14:57:35

      ●下图(a)所示为一个模块层次结构的例子,图(b)所示为对其进行集成测试的顺序,则此测试采用了(34)测试策略。该测试策略的优点不包括(35)。

      A.自底向上
      B.自顶向下
      C.三明治
      D.一次性
      (35)A.较早地验证了主要的控制和判断点
      B.较早地验证了底层模块
      C.测试的并行程度较高
      D.较少的驱动模块和桩模块的编写工作量

    11.三明治测试策略的优点:

    较早地验证了主要控制和判断点,测试的并行程度高,较少的驱动模块和桩模块的编写工作量。
    C B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 15:23:07

    ●采用McCabe度量法计算下图所示程序的环路复杂性为(36)。

      (36)A.1
      B.2
      C.3
      D.4

    McCabe复杂度将程序流程图转换成控制流程图后,就可以计算其环路复杂度了

    计算有向图G的环路复杂度公式为:V(G)=m-n+2
    说明:
    其中V(G)是有向图G中的环路个数,m是G中的有向弧数,n是G中的节点数。

    所以本题,n=10,m=11,

    选3C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 15:47:53

     ●在面向对象方法中,(37)是父类和子类之间共享数据和方法的机制。子类在原有父类接口的基础上,用适合于自己要求的实现去置换父类中的相应实现称为(38)。
      (37)A.封装
      B.继承
      C.覆盖
      D.多态
      (38)A.封装
      B.继承
      C.覆盖
      D.多态

    继承是父类和子类之间共享数据和方法的机制。

    重载是在同一域下的函数关系,在父子类情况下时,一般不予考虑。
    重载只是在类的内部存在,不会传导到父类和子类中间。即便是一个函数声明为virtual,也是这样。

      隐藏,是子类改写、重写了父类的代码。而覆盖认为,子类实现了父类的虚函数。父类的虚函数可以没有实现体,成为纯虚函数,等着子类去实现。而隐藏时,父类的函数也必须有实现体的。隐藏还是覆盖,只是说法不同,只要明白编译器在调用时,如果检索、匹配相应的函数即可。

    综上所述,总结为以下几点:

    1.子类是将父类的所有成员都复制一份,并且保存在不同的域中。如果同名,子类中会有两份,分别在子类域和父类域。

    2.调用时,是从调用对象(或指针)的类型开始检索的,先从自己域中检索,如果找到,判断是否为虚函数,不为虚函数直接调用,若为虚函数,通过运行时类型识别,调用真正对象的函数。如果没找到,去其父类域中检索,重复刚刚的判断。直到调用函数或者没有匹配的成员。而不会去子类中检索,所以如果是父类指针,即使指向子类对象,但调用的函数也只能是父类中的函数,除非是虚函数,才会根据子类对象去检索函数。

    多态(Polymorphism)按字面的意思就是"多种状态"。在面向对象语言中,接口的多种不同的实现方式即为多态。引用Charlie Calverts对多态的描述--多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4 编程技术内幕")。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。多态性在Object Pascal和C++中都是通过虚函数(Virtual Function) 实现的。

    B C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 15:54:31

    ●在UML用例图中,参与者表示(39)。
      A.人、硬件或其他系统可以扮演的角色
      B.可以完成多种动作的相同用户
      C.不管角色的实际物理用户
      D.带接口的物理系统或者硬件设计

    用例图所包含的元素如下:
      1. 参与者(Actor)
      表示与您的应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示。

      2. 用例(Use Case)
      用例就是外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示。

      3. 子系统(Subsystem)
      用来展示系统的一部分功能,这部分功能联系紧密。

      4. 关系
      用例图中涉及的关系有:关联、泛化、包含、扩展。
      如下表所示:

      a. 关联(Association)
      表示参与者与用例之间的通信,任何一方都可发送或接受消息。
      【箭头指向】:指向消息接收方

      b. 泛化(Inheritance)
      就是通常理解的继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。
      【箭头指向】:指向父用例

      c. 包含(Include)
      包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。
      【箭头指向】:指向分解出来的功能用例

      d. 扩展(Extend)
      扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。
      【箭头指向】:指向基础用例

      e. 依赖(Dependency)
      以上4种关系,是UML定义的标准关系。但VS2010的用例模型图中,添加了依赖关系,用带箭头的虚线表示,表示源用例依赖于目标用例。
      【箭头指向】:指向被依赖项

      5. 项目(Artifact)
      用例图虽然是用来帮助人们形象地理解功能需求,但却没多少人能够通看懂它。很多时候跟用户交流甚至用Excel都比用例图强,VS2010中引入了“项目”这样一个元素,以便让开发人员能够在用例图中链接一个普通文档。
      用依赖关系把某个用例依赖到项目上:

      然后把项目-》属性 的Hyperlink设置到你的文档上;
      这样当你在用例图上双击项目时,就会打开相关联的文档。
      6. 注释(Comment)

      包含(include)、扩展(extend)、泛化(Inheritance) 的区别:
      条件性:泛化中的子用例和include中的被包含的用例会无条件发生,而extend中的延伸用例的发生是有条件的;
      直接性:泛化中的子用例和extend中的延伸用例为参与者提供直接服务,而include中被包含的用例为参与者提供间接服务。
      对extend而言,延伸用例并不包含基础用例的内容,基础用例也不包含延伸用例的内容。
      对Inheritance而言,子用例包含基础用例的所有内容及其和其他用例或参与者之间的关系;

    A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 15:55:59

     ●在面向对象方法中,(37)是父类和子类之间共享数据和方法的机制。子类在原有父类接口的基础  ●在面向对象方法中,(37)是父类和子类之间共享数据和方法的机制。子类在原有父类接口的基础上,用适合于自己要求的实现去置换父类中的相应实现称为(38)。   (37)A.封装   B.继承   C.覆盖   D.多态   (38)A.封装   B.继承   C.覆盖   D.多态 继承是父类和子类之间共享数据和方法的机制。 重载是在同一域下的函数关系,在父子类情况下时,一般不予考虑。 重载只是在类的内部存在,不会传导到父类和子类中间。即便是一个函数声明为virtual,也是这样。   隐藏,是子类改写、重写了父类的代码。而覆盖认为,子类实现了父类的虚函数。父类的虚函数可以没有实现体,成为纯虚函数,等着子类去实现。而隐藏时,父类的函数也必须有实现体的。隐藏还是覆盖,只是说法不同,只要明白编译器在调用时,如果检索、匹配相应的函数即可。 综上所述,总结为以下几点: 1.子类是将父类的所有成员都复制一份,并且保存在不同的域中。如果同名,子类中会有两份,分别在子类域和父类域。 2.调用时,是从调用对象(或指针)的类型开始检索的,先从自己域中检索,如果找到,判断是否为虚函数,不为虚函数直接调用,若为虚函数,通过运行时类型识别,调用真正对象的函数。如果没找到,去其父类域中检索,重复刚刚的判断。直到调用函数或者没有匹配的成员。而不会去子类中检索,所以如果是父类指针,即使指向子类对象,但调用的函数也只能是父类中的函数,除非是虚函数,才会根据子类对象去检索函数。 多态(Polymorphism)按字面的意思就是"多种状态"。在面向对象语言中,接口的多种不同的实现方式即为多态。引用Charlie Calverts对多态的描述--多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4 编程技术内幕")。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。多态性在Object Pascal和C++中都是通过虚函数(Virtual Function) 实现的。 B C ... 何必呢

    重载,简单说,就是函数或者方法有同样的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:03:42

     ●UML中关联是一个结构关系,描述了一组链。两个类之间(40)关联。
      不能有多个
      可以有多个由不同角色标识的
      C.可以有任意多个
      D.的多个关联必须聚合成一个

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:10:11

     ●如下所示的UML图是(41),图中(Ⅰ)表示(42),(Ⅱ)表示(43)。

      (41)A.序列图
      B.状态图
      C.通信图
      D.活动图
      (42)A.合并分叉
      B.分支
      C.合并汇合
      D.流
      (43)A.分支条件
      B.监护表达式
      C.动作名
      D.流名称

    DAD

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:37:27

    ●为图形用户界面(GUI)组件定义不同平台的并行类层次绩构,适合采用(44)模式。
      A.享元(Flyweight)
      B.抽象工厂(Abstract Factory)
      C.外观(Facade))
      D.装饰器(Decorator)

    C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:40:09

     ●(45)设计模式将一个请求封装为一个对象,从而使得可以用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。
      命令(Command)
      B.责任链(Chain of Responsibility)
      C.观察者(Observer)
      D.策略(Strategy)

    GOF根据模式的目标将模式分为三个类目:创建型、行为型和结构型。



    1 创建型模式
    创建型模式设计对象的实例化,这类模式的特点是,不让用户依赖于对象的创建或排列方式,避免用户直接使用new运算符创建对象。

    GOF的23中模式中的下列5种模式属于创建型模式:

    (1)工厂方法模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。

    (2)抽象工厂模式:提供一个创建一系列或相互依赖对象的接口,而无须指定它们具体的类。

    (3)生成器模式:将一个复杂对象的创建与它的表示分离,使得同样的创建过程可以创建不同的表示。

    (4)原型模式:将原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。

    (5)单件模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。





    2 行为型模式
    行为模式涉及怎样合理地设计对象之间的交互通信,以及怎样合理为对象分配职责,让设计富有弹性,易维护和易复用。

    GOF的23种模式中的下列11种模式属于创建型模式:

    (1)责任链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。

    (2)命令模式:将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。

    (3)解释器模式:给定一个语言,定义它文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。

    (4)迭代器模式:提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。

    (5)中介者模式:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

    (6)备忘录模式:在不破坏封装性的情况下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态。

    (7)观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生变化时,所有依赖于它的对象都得到通知并被自动更新。

    (8)状态模式:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。

    (9)策略模式:定义一系列算法,把它们一个个封装起来,并且可使它们可以相互替换。策略模式使算法可独立于使用它的客户而变化。

    (10)模板方法模式:定义一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法使子类可以不改变一个算法的结构即可定义该算法的某些特定步骤。

    (11)访问者模式:表示一个作用于某对象结构中的各个元素的操作。它可以在不改变各个元素的类的前提下定义作用于这些元素的新操作。





    3 结构型模式
    结构型模式涉及如何组合类和对象以形成更大的结构,和类有关的结构型模式设计如何合理地使用继承机制;和对象有关的结构型模式涉及如何合理地使用对象组合机制。

    GOF的23种模式中的下列7种模式属于创建型模式:

    (1)适配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使原本由于接口不兼容而不能一起工作的那些类可以一起工作。

    (2)组合模式:将对象组合成数形结构以表示”部分-整体“的层次结构。Composite使用户对单个对象和组合对象的使用具有一致性。

    (3)代理模式:为其他对象提供一种代理以控制对这个对象的访问。

    (4)享元模式:运用共享技术有效地支持大量细粒度的对象。

    (5)外观模式:为系统的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使这一子系统更加容易使用。

    (6)桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变化。

    (7)装饰模式:动态地给对象添加一些额外的职责,就功能来说装饰模式相比生成子类更为灵活。

    每天一小步,成就一大步

    A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:47:58

     ●(46)设计模式最适合用于发布/订阅消息模型,即当订阅者注册一个主题后,此主题有新消息到来时订阅者就会收到通知。
      适配器(Adapter)
      B.通知(Notifier)
      C.观察者(Observer)
      D.状态(State)

    C

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:48:31

    ●因使用大量的对象而造成很大的存储开销时,适合采用(47)模式进行对象共享,以减少对象数量从而达到较少的内存占用并提升性能。
      组合(Composite)
      B.享元(Flyweight)
      C.迭代器(Iterator)
      D.备忘(Memento)

    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:51:23

    ●移进--归约分析法是编译程序(或解释程序)对高级语言源程序进行语法分析的一种方法,属于(48)的语法分析方法。
      自顶向下(或自上而下)
      B.自底向上(或自下而上)
      C.自左向右
      D.自右向左

    自底向上有:移进--归约分析法;优先分析法;LR分析法
    B

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:52:18

     ●数据的物理独立性和逻辑独立性分别是通过修改(51)来完成的。
      A.外模式与内模式之间的映像、模式与内模式之间的映像
      B.外模式与内模式之间的映像、外模式与模式之间的映像
      C.外模式与模式之间的映像、模式与内模式之间的映像
      D.模式与内模式之间的映像、外模式与模式之间的映像

    15.移进-归约分析法是编译程序(或解释程序)对高级语言源程序进行语法分析的一种方法,属于自底向上的语法分析方法。

    16.数据的物理独立性和逻辑独立性分别是通过修改模式与内模式之间的映像、外模式与模式之间的映像来完成的。

    D

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 16:54:28

    ●关系规范化在数据库设计的(52)阶段进行。
      A. 需求分析
      B.概念设计
      C.逻辑设计
      D.物理设计

    C

    规范化理论是数据库逻辑设计的指南和工具,具体步骤如下:

    (1)考察关系模型的函数依赖关系,确定范式等级。逐一分析各关系模式,考察是否存在部分函数依赖、传递函数依赖等,确定它们分别属于第几范式。

    (2)对关系模式进行合并或分解。根据应用要求,考察这些关系模式是否合乎要求,从而确定是否要对这些模式进行合并或分解,例如,对于具有相同主码的关系模式一般可以合并;对于非BCNF的关系模式,要考察“异常弊病”是否在实际应用中产生影响,对于那些只是查询,不执行更新操作,则不必对模式进行规范化(分解),实际应用中并不是规范化程度越高越好,有时分解带来的消除更新异常的好处与经常查询需要频繁进行自然连接所带来的效率低相比会得不偿失。对于那些需要分解的关系模式,可以用规范化方法和理论进行模式分解。最后,对产生的各关系模式进行评价、调整,确定出较合适的一组关系模式。
    关系规范化理论提供了判断关系逻辑模式优劣的理论标准,帮助预测模式可能出现的问题,是产生各种模式的算法工具,因此是设计人员的有力工具。

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 17:10:17

    ●若给定的关系模式为R<U,F>,U={A,B,C},F = {AB→C,C→B>,则关系R(53)。
      A. 有2个候选关键字AC和BC,并且有3个主属性
      B.有2个候选关键字AC和AB,并且有3个属性
      C.只有一个候选关键字AC,并且有1个非主属性和2个主属性
      D.只有一个候选关键字AB,并且有1个非主属性和2个主属性

    考查函数依赖
    关系中的某一属性或属性组的值能唯一地标识一个元组,而其任何真子集都不能再标识,则称该属性组为候选码。
    如果一个关系有多个不同的主码时,那么这些主码组合在一起就是候选码,也就是说一个关系主码只能选一个,而候选码可以有多个,这时如果候选码只有一个,那么该候选码就是主码。
    主属性和非主属性和互补的,一个关系模式的属性不是主属性就是非主属性。
    组成候选码的属性就是主属性,其他的就是非主属性,所以要判断关系模式中的属性是主属性还是非主属性,首先要求解出其候选码。
    在本题中,从题目给出的函数依赖关系我们可以看出,AB能推导出C,即推导出所有属性,而C能推导出B,同样,AC也能够推导出所有属性,因此AB与AC都是该关系的候选码。
    所以该关系中的属性都是主属性,没有非主属性。

    A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 17:14:51

     ●某公司数据库中的元件关系模式为P(元件号,元件名称,供应商,供应商所在地,库存量),函数依赖集F如下所示:
      F={元件号→元件名称,(元件号,供应商)→库存量,供应商→供应商所在地}
      元件关系的主键为(54),该关系存在冗余以及插入异常和删除异常等问题。为了解决这一问题需要将元件关系分解(55),分解后的关系模式可以达到(56)。
      (54)A.元件号,元件名称
      B.元件号,供应商
      C.元件号,供应商所在地
      D.供应商,供应商所在地
      (55)A.元件1(元件号,元件名称,库存量)、元件2(供应商,供应商所在地)
      B.元件1(元件号,元件名称)、元件2(供应商,供应商所在地,库存量)
      C.元件1(元件号,元件名称)、元件2(元件号,供应商,库存量)、元件3(供应商,供应商所在地)
      D.元件1(元件号,元件名称)、元件2(元件号,库存量)、元件3(供应商,供应商所在地)、元件4(供应商所在地,库存量)
      (56)A.1NF
      B.2NF
      C.3NF
      D.4NF

    B X A

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 17:24:00

     ●若元素以a,b,c,d,的顺序进入一个初始为空的栈中,每个元素进栈、出栈各1次,要求出栈的第一个元素为d,则合法的出栈序列共有(57)种。
      A.4
      B.5
      C.6
      D.24

    n个数据依次入栈,出栈顺序种数的递推公式如下: F(n)=∑(F(n-1-k)*Fk);其中k从0到n-1 已知F0=1, F1=F0*F0=1 F2=F1*F0+F0*F1=2 F3=F2*F0+F1*F1+F0*F2=5 …… 证明的话,对于n个数据,我只看第一个数据的出入栈顺序: 第一个数据入栈到出栈之间可以包含0,1,2…n-1个数据的出入栈, 相应的,第一个数据出栈之后,还有n-1,n-2…2,1,0个数据需要出入栈 根据组合数学里面的乘法原理,需要把第一个数据出栈前后的种数相乘 根据加法原理,需要把第一个数据出入栈的n种方式全加起来 于是就得到了那个递推公式,不过,要找出一个直接计算Fn的公式似乎不太好办。
    本回

  • 何必呢

    何必呢 (来之不易 愈加珍惜 拯救自己) 2016-11-10 17:29:15

    ●设有二叉排序树(或二叉查找树)如下图所示,建立该二叉树的关键码序列不可能是(58)。

      A.23 31 17 19 11 27 13 90 61
      B.23 17 19 31 27 90 61 11 13
      C.23 17 27 19 31 13 11 90 61
      D.23 31 90 61 27 17 19 11 13

    这个题的一个特点就是没有指出来到底是那种遍历方式,可以是前中后序,也可以是堆排序等方式,不用太仔细考虑,这个题的一个技巧就是,注意27是31的孩子节点,31是27的父亲节点,31必须在27前面
    X
      ●若一棵二叉树的高度(即层数)为h,则该二叉树(59)。
      有2h个结点
      B.有2h-1个结点
      C.最少有2h-1个结点
    D.最多有2^h-1个结点
    D

你的回应

回应请先 , 或 注册

49 人聚集在这个小组

最新话题  ( 更多 )

↑回顶部