结束
l 11
如果判定中的条件表达式是复合条件,即条件表 达式是由一个或多个逻辑运算符连接的逻辑表达 式,则需要改变复合条件的判断为一系列只有单 个条件的嵌套的判断。
复合条件分解控制流图
A>1 AND B=0
X= X/ A
(a ) 流程图
A>1
B=0
1
2 3
流程图
1
X=X/A
(c ) 详细流程图
设计测试用例
输入数据
1 iR=0 it=0
2 iR=1 iT=0
3 iR=1 iT=1
4 iR=1 iT=2
预期输出
X=0 Y=0
X=2 Y=0
X=10 Y=0
X=20 Y=0
3、图矩阵
图矩阵-即流图的矩阵表示。其维数等于流图的节点数。 每列和每行都对应于标识的节点,矩阵元素对应于节点 的边。
对应上面图中的圈复杂度,计 算如下:
✓ 流图中有四个区域;
J
✓ V(G)=11条边-9结点+2=4;
✓ V(G)=3个判定结点+1=4。
A
4
B
K
6
D
C
7
F8 G
E
10
11
H
I
13
14
确定路径
路径1:4—14 路径2:4—6—7—13—4—14 路径3:4—6—8—10—13—4—14 路径4:4—6—8—11—13—4—14
return s;
}
环形复杂度计算
1.流图中区域的数量对应于环形复杂度; 2.给定流图G的环形复杂度为V(G),定义为
V(G )=E-N+2, E是流图中边的数量,N是流图中节点的数量. 3.给定流图G的环形复杂度V(G),定义为 V(G)=P+1,P是流图G中判定节点的数量.