软件复杂性度量中,( )可以反映源代码结构的复杂度。
单选题
软件复杂性度量中,( )可以反映源代码结构的复杂度。
A. 模块数
B. 环路数
C. 用户数
D. 对象数
答案:B
解析
正确答案:B. 环路数
解析:
环路数通常指 McCabe 环路复杂度,它基于程序控制流图计算,公式可简化为“判定节点数 + 1”或“边数 - 节点数 + 2”。它能直接反映源代码中分支、循环、条件判断等控制结构的复杂程度,因此是衡量源代码结构复杂度的经典指标。
选项分析:
- A. 模块数:反映系统拆分规模,不能直接说明单个源码结构的复杂程度。
- B. 环路数:正确,直接度量控制流分支复杂度。
- C. 用户数:属于业务或负载指标,与源代码结构复杂度无关。
- D. 对象数:反映面向对象设计规模,但不能直接代表代码控制结构复杂度。
面试延伸:
McCabe 环路复杂度常用于评估代码可测试性与可维护性,圈复杂度越高,通常需要更多测试用例覆盖路径,也提示代码可能需要重构。