参考答案和解析
正确答案:D
更多“ ● 某程序的程序图如下所示,运用 McCabe 度量法对其进行度量,其环路复杂度是(32) 。(32)A. 2 B. 3 C. 4 D. 5 ”相关问题
  • 第1题:

    某程序的程序图如下图所示,运用McCabe度量法对其进行度量,其环路复杂度是(36) 。

    A.4

    B.5

    C.6

    D.8


    正确答案:C
    解析:McCabe度量法是一种基于程序控制流的复杂性度量方法。McCabe定义的程序复杂性度量值又称环路复杂度,它基于一个程序模块的程序图中环路的个数。计算有向图G的环路复杂性的公式:V(G)=m-n+2,其中V(G)是有向图G中的环路个数,m是图G中有向弧个数,n是图G中结点个数。
    该题中环路复杂度:弧数目一节点数目+2=11-7+2=6。

  • 第2题:

    对下图所示的程序流程图进行语句覆盖测试和路径覆盖测试,采用McCabe度量法计算其环路复杂度为( )。

    A.1
    B.2
    C.3
    D.4

    答案:D
    解析:
    覆盖2条路径就能达到语句覆盖的要求,用2个测试用例即可。路径覆盖需要把程序中的3条路径均覆盖一遍,需要4个用例。整个程序流程图转化为节点图之后,一共11个节点,13条边,根据环路复杂度公式有:13-11+2=4。

  • 第3题:

    对下图所示的程序流程图进行判定覆盖测试,则至少需要( )个测试用例。采用 McCabe 度量法计算其环路复杂度为(请作答此空)。


    A.2
    B.3
    C.4
    D.5

    答案:B
    解析:
    判定覆盖是设计足够多的测试用例,使得程序中的每一个判断至少获得一次"真"和一次"假",即使得程序流程图中的每一个真假分支至少被执行一次。计算环路复杂度可以采用公式法:V(G)=m-n+2,其中m为弧度(边的数量),n为结点数量。或者可以数封闭区间的数量,除了图中明显的两处外,与外界的连通的部分也是一个封闭区间。

  • 第4题:

    采用McCabe度量法计算下列程序图的环路复杂性为(32)。

    A.2
    B.3
    C.4
    D.5

    答案:C
    解析:
    在一个强连通的有向图G中,环的个数为m-n+2p。其中m为图中弧的个数,n为图中的结点数,p是图中强连通分量的个数。题图为一强连通图,故p=1,而图中弧的个数为8,结点数为6,故环的个数为8-6+2=4。

  • 第5题:

    对下图所示的程序流程图进行判定覆盖测试,则至少需要(请作答此空)个测试用例。采用 McCabe 度量法计算其环路复杂度为( )。


    A.2
    B.3
    C.4
    D.5

    答案:A
    解析:
    判定覆盖是设计足够多的测试用例,使得程序中的每一个判断至少获得一次"真"和一次"假",即使得程序流程图中的每一个真假分支至少被执行一次。计算环路复杂度可以采用公式法:V(G)=m-n+2,其中m为弧度(边的数量),n为结点数量。或者可以数封闭区间的数量,除了图中明显的两处外,与外界的连通的部分也是一个封闭区间。