更多“问答题设一个控制图如下,请给出其环路复杂度和基本路径。”相关问题
  • 第1题:

    根据McCabe环路复杂性度量,程序图9-17的复杂度是(133),对这个程序进行路径覆盖测试,可得到的基本路径是(134)。

    A.2

    B.3

    C.4

    D.5


    正确答案:C

  • 第2题:

    请给出该系统的基本路径集。


    正确答案:由控制流图可以看出该图的V(G)=5(区域数)所以基本路径集共由5条路径组成。 1-2-1-… 1-2-3-1-… 1-2-3-4-1-… 1-2-3-4-2-1… 1-2-3-4-2-3-1…
    由控制流图可以看出,该图的V(G)=5(区域数),所以基本路径集共由5条路径组成。 1-2-1-… 1-2-3-1-… 1-2-3-4-1-… 1-2-3-4-2-1… 1-2-3-4-2-3-1…

  • 第3题:

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

    (36)A. 4 B. 5 C. 6 D. 8


    正确答案:C

  • 第4题:

    某程序的程序图如下图所示,运用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。

  • 第5题:

    根据McCabe环路复杂性度量,下面程序图(图5-2)的复杂度是(1),对这个程序进行路径覆盖测试,可得到的基本路径是(2)。

    (1)

    A.2

    B.3

    C.4

    D.5


    正确答案:C

  • 第6题:

    对以下的程序伪代码(用缩进表示程序块)进行路径覆盖测试,至少需要(请作答此空)个测试用例。采用McCabe度量法计算其环路复杂度为( )。

    A.2
    B.4
    C.6
    D.8

    答案:B
    解析:
    由公式可知V(G)=m-n+2得到14-12+2=4.

  • 第7题:

    阅读下列Java程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由Java语言编写的程序,按要求回答问题。



    问题1:(2分) 请简述基本路径测试法的概念。
    问题2:(8分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
    问题3:(3分)请给出【问题2】中控制流图的线性无关路径。


    答案:
    解析:
    问题1:答案:基本路径测试法是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。
    问题2:答案:(1)控制流图如下图所示:



    (2)V(G)=4+1=5
    问题3:答案:(1) 1-2-3-8-10(2) 1-2-4-5-6-8-10(3) 1-2-3-4-5-6-8-10(4) 1-2-4-5-7-8-10(5) 1-2-3-8-9-10
    【解析】
    问题1:本小题考查基本路径法的概念。
    问题2:本题考查白盒测试方法中的基本路径法。涉及到的知识点包括:根据代码绘制控制流图、计算环路复杂度。控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。基本结构如下所示:



    其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套的判断。环路复杂度用来衡量一个程序模块所包含的判定结构的复杂程度。环路复杂度等于右图中的判定的节点个数加1。图中判定节点个数为4,所以V(G)=4+1=5。控制流程图的环路复杂性 V(G)一共有以下三种方法,但是最后一种最好用,不易出错。(1)控制流程图中的区域个数。(2)边数-结点数+2。(3)判定数+1。
    问题3:本小题考查白盒测试用例设计方法之基本路径法。涉及到根据控制流图和环路复杂度给出线性无关路径。线性无关路径:指包含一组以前没有处理的语句或条件的路径。从控制流图上来看,一条线性无关路径是至少包含一条在其他线性无关路径中从未有过的边的路径。程序的环路复杂度等于线性无关路径的条数,所以本题中有5条线性无关路径。这5条路径组成了问题2中控制流图的一个基本路径集。只要设计出的测试用例能确保这些基本路径的执行,就可以使程序中的每个可执行语句至少执行一次,每个条件的取真和取假分支也能得到测试。需要注意的是,基本路径集不是唯一的,对于给定的控制流图,可以得到不同的基本路径集。

  • 第8题:

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

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

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

  • 第9题:

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

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

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

  • 第10题:

    设一个控制图如下,请给出其环路复杂度和基本路径。


    正确答案: 环路复杂度:5
    基本路径:
    路径1:1—2—3—5—6—12—13—15
    路径2:1—2—4—5—6—12—13—15
    路径3:1—2—3—5—7—8—13—15
    路径4:1—2—4—5—7—8—13—15
    路径5:1—2—3—5—7—9—10—14—13—15
    路径6:1—2—4—5—7—9—10—14—13—15
    路径7:1—2—3—5—7—9—11—14—13—15
    路径8:1—2—4—5—7—9—11—14—13—15

  • 第11题:

    请给出术语节点,链路,子路径,网络云,交换和路径摘要的定义。 


    正确答案: (1)节点:网络任何支路的终端或网络中的两个或更多支路的互连公共点
    (2)链路:两台(或更多)主机之间的链路段的链接,包括租用路线,以太网,帧中继云等
    (3)子路径:子路径是给定一条路径中的任何一个序列,它自身也是一条路径
    (4)网络云:一个无向的图,该图的顶点是路由器,其边是连接一对路由器的链路
    (5)交换:一种特殊的链路,交换直接连接到或通过一台主机连接到另一个网络云,或者一个网络云链接到另一个网络云
    (6)形为的序列,其中n≥0,h0和hn是主机,每个e1,...en是交换,每个l1,...ln-1是网络云子路径

  • 第12题:

    问答题
    设一个控制图如下,请给出其环路复杂度和基本路径。

    正确答案: 环路复杂度:5
    基本路径:
    路径1:1—2—3—5—6—12—13—15
    路径2:1—2—4—5—6—12—13—15
    路径3:1—2—3—5—7—8—13—15
    路径4:1—2—4—5—7—8—13—15
    路径5:1—2—3—5—7—9—10—14—13—15
    路径6:1—2—4—5—7—9—10—14—13—15
    路径7:1—2—3—5—7—9—11—14—13—15
    路径8:1—2—4—5—7—9—11—14—13—15
    解析: 暂无解析

  • 第13题:

    根据McCabe环路复杂性度量,如图4-5所示的程序图的复杂度是(31),对该程序进行路径覆盖测试,可得到的基本路径是(32)。

    A.2

    B.3

    C.4

    D.5


    正确答案:C

  • 第14题:

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

    (32)A. 2 B. 3 C. 4 D. 5


    正确答案:D

  • 第15题:

    【问题2】 (8分)

    请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。


    正确答案:

    【问题2】 (8分)

    控制流图:

    控制流图的环路复杂度V(G)=6

     

  • 第16题:

    对一个算法的评价要从( )

    A.程序复杂度

    B.时间复杂度

    C.环路复杂度

    D.空间复杂度


    正确答案:BD

  • 第17题:

    根据Mccabe环路复杂性度量,下面程序图的复杂度是(20),对这个程序进行路径覆盖测试,可得到的基本路径是(21)。

    A.2

    B.3

    C.4

    D.5


    正确答案:C
    解析:程序图的环路数是源代码复杂程度的度量。根据McCabe度量法,环路数N= e-n+2,这里e表示有向图的边数,n表示结点数。图中e=13,n=11,得到N=4。另外一种方法是计算有向图把平面划分成的区域数,这里有3个闭合区域外加1个开放区域,共4个区域。所以程序图的复杂度是4。
      路径测试的关键是要找出程序图中所有可能的路径。对这个程序进行路径覆盖测试,可得到4条基本路径:
      A—B—C—H—I—K
      A—B—C—H—J—K
      A—B—C—D—E—F—G—C—H—I—K
      A—B—C—D—E—G—C—H—I—K
      所有基本路径都是从程序起点到终点,并且包含了至少一条独立的边。

  • 第18题:

    【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C 语言编写的程序,按要求回答问题。



    问题1:(4分)请给出满足100%DC(判定覆盖)所需的逻辑条件。
    问题2:(8分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。问题3:(3分)请给出【问题2】中控制流图的线性无关路径。


    答案:
    解析:
    问题1:
    1、*p == ’r’2、*p != ’r’3、*p >= ’0’&& *p <= ’9’4、*p < ’0’|| *p > ’9’5、*p == ’f’6、*p != ’f’7、m != fmode + sizeof(fmode)8、m == fmode + sizeof(fmode)
    问题2:
    (1) 控制流图如下图所示:



    (2)、V(G)=5+1=6问题3:
    (1) 1-2-4-5-6-10-11-2... (2) 1-2-3-4-5-6-10-11-2... (3) 1-2-4-7-8-10-11-2...(4) 1-2-4-5-7-8-10-11-2… (5) 1-2-4-7-9-10-11-12(6) 1-2-4-5-7-9-10-11-12
    【解析】
    问题1:
    本小题考查白盒测试中的判定覆盖法。判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得-次 “真”值和“假”值,从而使程序的每一个分支至少都通过一次。本题中程序一共有4个判定,所以满足判定覆盖一共就需要8个逻辑条件,这些条件详见上述答案。问题2:
    解析:本题考查白盒测试方法中的基本路径法。涉及到的知识点包括:根据代码绘制控制流图、计算环路复杂度。控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。基本结构如下所示:



    其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套的判断。环路复杂度用来衡量一个程序模块所包含的判定结构的复杂程度。环路复杂度等于右图中的判定的节点个数加1。图中判定节点个数为5,所以V(G)=5+1=6。控制流程图的环路复杂性 V(G)一共有以下三种方法,但是最后一种最好用,不易出错。(1)控制流程图中的区域个数。(2)边数-结点数+2。(3)判定数+1。问题3:
    本小题考查白盒测试用例设计方法之基本路径法。涉及到根据控制流图和环路复杂度给出线性无关路径。线性无关路径:指包含一组以前没有处理的语句或条件的路径。从控制流图上来看,一条线性无关路径是至少包含一条在其他线性无关路径中从未有过的边的路径。程序的环路复杂度等于线性无关路径的条数,所以本题中有6条线性无关路径。这6条路径组成了问题2中控制流图的一个基本路径集。只要设计出的测试用例能确保这些基本路径的执行,就可以使程序中的每个可执行语句至少执行一次,每个条件的取真和取假分支也能得到测试。需要注意的是,基本路径集不是唯一的,对于给定的控制流图,可以得到不同的基本路径集。

  • 第19题:

    阅读下列程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C 语言编写的程序,按要求回答问题。




    问题1:(5分)请给出满足100%DC(判定覆盖)所需的逻辑条件。
    问题2:(7分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
    问题3:(3分)请给出【问题2】中控制流图的线性无关路径。


    答案:
    解析:
    问题1:答案:



    问题2:答案:1.控制流图如下图所示:



    (2)、V(G)=6+1=7
    问题3:答案:1.1-2-3-4-2...2.1-2-3-5-6-2...3.1-2-3-5-7-134.1-2-8-9-10-11-135.1-2-8-9-10-12-136.1-2-8-9-12-137.1-2-8-12-13
    【解析】
    问题1:本小题考查白盒测试中的判定覆盖法。判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得-次 “真”值和“假”值,从而使程序的每一个分支至少都通过一次。本题中程序一共有5个判定,所以满足判定覆盖一共就需要10个逻辑条件,这些条件详见上述答案。问题2:本题考查白盒测试方法中的基本路径法。涉及到的知识点包括:根据代码绘制控制流图、计算环路复杂度。控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。基本结构如下所示:



    其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套的判断。环路复杂度用来衡量一个程序模块所包含的判定结构的复杂程度。环路复杂度等于右图中的判定的节点个数加1。图中判定节点个数为6,所以V(G)=6+1=7。控制流程图的环路复杂性 V(G)一共有以下三种方法,但是最后一种最好用,不易出错。(1)控制流程图中的区域个数。(2)边数-结点数+2。(3)判定数+1。
    问题3:本小题考查白盒测试用例设计方法之基本路径法。涉及到根据控制流图和环路复杂度给出线性无关路径。线性无关路径:指包含一组以前没有处理的语句或条件的路径。从控制流图上来看,一条线性无关路径是至少包含一条在其他线性无关路径中从未有过的边的路径。程序的环路复杂度等于线性无关路径的条数,所以本题中有7条线性无关路径。这7条路径组成了问题2中控制流图的一个基本路径集。只要设计出的测试用例能确保这些基本路径的执行,就可以使程序中的每个可执行语句至少执行一次,每个条件的取真和取假分支也能得到测试。需要注意的是,基本路径集不是唯一的,对于给定的控制流图,可以得到不同的基本路径集。

  • 第20题:

    阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。



    问题1:(3分) 请针对上述C程序,给出满足100%DC(判定覆盖)所需的逻辑条件。
    问题2:(7分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
    问题3:(3分)请给出【问题2】中控制流图的线性无关路径。


    答案:
    解析:
    问题1:答案:



    问题2:答案:(1)、控制流图如下图所示:



    (2)、V(G)=7+1=8
    问题3:答案:1.1、2、5、6、13;2.1、2、3、5、6、13;3.1、2、3、4、2、5、6、13;4.1、2、5、7、12、1. . .5.1、2、5、7、8、12、1. . .6.1、2、5、7、8、9、12、1. . .7.1、2、5、7、8、9、10、12、1. . .8.1、2、5、7、8、9、10、11、7、12、1. . .
    【解析】
    问题1:解析:本小题考查白盒测试用例的设计方法之判定覆盖法。判定覆盖法:设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次“真”值和“假”值,从而使程序的每一个分支至少都通过一次。本题目中共有3个判定,所以满足判定覆盖一共需要6个逻辑条件。这些条件详见上述答案。
    问题2:解析:本题考查白盒测试方法中的基本路径法。涉及到的知识点包括:根据代码绘制控制流图、计算环路复杂度。控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。基本结构如下所示:



    其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套的判断。环路复杂度用来衡量一个程序模块所包含的判定结构的复杂程度。环路复杂度等于右图中的判定的节点个数加1。图中判定节点个数为6,所以V(G)=7+1=8。控制流程图的环路复杂性 V(G)一共有以下三种方法,但是最后一种最好用,不易出错。(1)控制流程图中的区域个数。(2)边数-结点数+2。(3)判定数+1。问题3:解析:本小题考查白盒测试用例设计方法之基本路径法。涉及到根据控制流图和环路复杂度给出线性无关路径。线性无关路径:指包含一组以前没有处理的语句或条件的路径。从控制流图上来看,一条线性无关路径是至少包含一条在其他线性无关路径中从未有过的边的路径。程序的环路复杂度等于线性无关路径的条数,所以本题中有8条线性无关路径。这8条路径组成了问题2中控制流图的一个基本路径集。只要设计出的测试用例能确保这些基本路径的执行,就可以使程序中的每个可执行语句至少执行一次,每个条件的取真和取假分支也能得到测试。需要注意的是,基本路径集不是唯一的,对于给定的控制流图,可以得到不同的基本路径集。

  • 第21题:

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

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

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

  • 第22题:

    对一个算法的综合评价要从()几个方面。

    • A、程序复杂度
    • B、时间复杂度
    • C、环路复杂度
    • D、空间复杂度

    正确答案:B,D

  • 第23题:

    问答题
    计算环路复杂度方法哪些 ?

    正确答案: V(G)=简单判定节点数+1V(G)=E-N+2V(G)=封闭区域数+1
    解析: 暂无解析

  • 第24题:

    问答题
    请给出术语节点,链路,子路径,网络云,交换和路径摘要的定义。

    正确答案: (1)节点:网络任何支路的终端或网络中的两个或更多支路的互连公共点
    (2)链路:两台(或更多)主机之间的链路段的链接,包括租用路线,以太网,帧中继云等
    (3)子路径:子路径是给定一条路径中的任何一个序列,它自身也是一条路径
    (4)网络云:一个无向的图,该图的顶点是路由器,其边是连接一对路由器的链路
    (5)交换:一种特殊的链路,交换直接连接到或通过一台主机连接到另一个网络云,或者一个网络云链接到另一个网络云
    (6)形为的序列,其中n≥0,h0和hn是主机,每个e1,...en是交换,每个l1,...ln-1是网络云子路径
    解析: 暂无解析