A.ABCHIK;ABCHJK:ABCDEFG
- AABCHIK;ABCHJK:ABCDEFG
- BABCHIK;ABCHJK;ABCDEFGCHIK:ABCDEGCHIK
- CABCHIK;ABCHJK;ABCDEFGCHIK:ABDEGCHJK
- DABCHIK;ABCHJK;ABCDEFGCHIK;ABCDEFGCHJK;ABCDEGCHIK
A.ABCHIK;ABCHJK:ABCDEFG
解析:对程序图环路复杂度的求解有3种方法。解法1:程序图的环路数是源代码复杂程度的度量。根据McCabe度量法,环路数N=e-n+2,其中,e表示有向图的边数,n表示节点数。图5-2中e=13,n=11,得到N=13-11+2=4。解法2:计算有向图把平面划分成的区域数。图5-2中有3个闭合区域外加1个开放区域,共4个区域。所以程序图的复杂度是4。解法3:图5-2中有3个判断节点,即节点C、E、H,所以程序图的复杂度是判断节点数加1,即3+1=4。路径测试的关键是要找出程序图中所有可能的路径,这些基本路径都是从程序起点到终点,并且包含了至少一条独立的边。对图5-2所示的程序进行路径覆盖测试,可得到4条基本路径:ABCHIK;ABCHJK;ABCDEFGCHIK;ABCDEGCHIK。