问答题X 纠错

参考答案:

K.Magel从六个方面描述软件复杂性:
①理解程序的难度;
②改错及维护程序的难度;
③向他人解释程序的难度;
④按指定方法修改程序的难度;
⑤根据设计文档编写程序的工作量;
⑥执行程序时需要资源的程度。
软件复杂性度量模型应遵循的基本原则:
⑴软件复杂性与程序大小的关系不是线性的;
⑵控制结构复杂的程序较复杂;
⑶数据结构复杂的程序较复杂;
⑷转向语句使用不当的程序较复杂;
⑸循环结构比选择结构复杂,选择结构又比顺序结构复杂;
⑹语句、数据、子程序和模块在程序中的次序对软件复杂性都有影响;
⑺全程变量、非局部变量较多时程序较复杂;
⑻参数按地址传递比按值传递更复杂;
⑼函数副作用比显式参数传递更难以琢磨;
⑽具有不同作用的变量共用一个名字时较难理解;
⑾模块间或过程间联系密切的程序较复杂;
⑿嵌套深度越深程序越复杂。
最典型的两种程序复杂性度量的方法中,McCabe环路复杂性度量就是针对基本原则(2)制定的度量模型;Halstead软件科学则是针对程序中操作符和操作数的出现频度而制定的度量模型。

查答案就用赞题库小程序 还有拍照搜题 语音搜题 快来试试吧
无需下载 立即使用

你可能喜欢

问答题

下面给出一个求实函数方程F(x)在自变量区间[a,b]中的全部实根的算法。首先阅读此程序,然后
(1)画出消去全部goto语句的结构化程序流程图。
(2)将它改成N-S图。
在算法中,a与b是区间[a,b]的两端点值;eps1与eps2是用户要求的求解精度。如果区间中点的函数值的绝对值小于eps1或新的小区间的长度小于eps2,就认为这个中点为根。

参考答案:

(1)结构化的程序流程图:

(2)N-S图:

问答题

下面是两个程序流程图,试分别用N-S图和PAD表示之,并计算它们的McCabe复杂性度量。

参考答案:

对应的N-S图如下。

对应PAD图如下。

McCabe复杂性度量都为3。

问答题

有一种循环结构,叫做N+1/2循环。其流程图如下所示。这种控制结构不属于基本控制结构:它既不是先判断型循环,又不是后判断型循环。试修改此流程图,将它改为用基本控制结构表示的等效的流程图。

参考答案:等效的控制流程图如下图中 (a) 所示。先判断型循环要求在进入循环体之前,先判断是否要继续执行此循环。因此,在这种控制结...

问答题

设下图给出的程序流程图代表一个非结构化的程序,试问:
(1)为什么说它是一个非结构化的?
(2)设计一个等价的使用附加标志变量flag的结构化程序。
(3)设计一个使用break(用于代替goto)的程序。

参考答案:

(1)它是一个单入口、两出口的结构,所以是一个非结构化的程序。
(2)等价的结构化程序:

问答题

结构化程序设计有时被错误地称为“无GOTO语句”的程序设计。请说明为什么会出现这样的说法,并讨论环绕着这个问题的一些争论。

参考答案:早在1963年,针对当时流行的ALGOL语言,Peter Naur指出,在程序中大量地,没有节制地使用GOTO语句,会使...

问答题

试说明下面的两个程序段的功能是什么?可否用另一些等效的程序段来代替它,以提高其可读性。

参考答案:

(1)的功能是对换A[I]与A[T]的内容。等效的程序段可以是:

(2)的功能是建立一个单位矩阵V。等效的程序段可以是:

填空题

UNIX操作系统是()研制的,它是用程序语言()书写实现的。

参考答案:Bell实验室;C

单项选择题

A.前者运行效率高
B.两者大致相同
C.后者运行效率高
D.不能确定

填空题

从下列叙述中选出5条符合程序设计风格指导原则的叙述。
(1)嵌套的重数应加以限制。
(2)尽量多使用临时变量。
(3)不滥用语言特色。
(4)不用可以省略的括号。
(5)使用有意义的变量名。
(6)应尽可能把程序编得短些。
(7)把常见的局部优化工作留给编译程序去做。
(8)注解越少越好。
(9)程序的格式应有助于读者理解程序。
(10)应尽可能多用GOTO语句。
这5条符合要求的叙述为()。

参考答案:(1)、(3)、(5)、(7)、(9)
赞题库

赞题库-搜题找答案

(已有500万+用户使用)


  • 历年真题

  • 章节练习

  • 每日一练

  • 高频考题

  • 错题收藏

  • 在线模考

  • 提分密卷

  • 模拟试题

无需下载 立即使用

版权所有©考试资料网(ppkao.com)All Rights Reserved