阅读以下说明,回答问题,将解答填入对应的解答栏内。 [说明] 给出一个接收三个数a、b、c作为三角形边长并输出三角形的类型的程序。程序代码如下所示: 结点 源代码行 A read a, b, c B

admin2009-02-15  31

问题 阅读以下说明,回答问题,将解答填入对应的解答栏内。
[说明] 给出一个接收三个数a、b、c作为三角形边长并输出三角形的类型的程序。程序代码如下所示:
   结点        源代码行
   A        read a, b, c
   B        type = "scalene"
   C        if(a = = b || b = = c|| a = = c)
   D        type = "isosceles"
   E        if (a = = b && b= =c)
   F        type = "equilateral"
   G        if (a> =b+ c || b> =a+ c||c> =a+ b)
   H        type = "not a triangle"
   I        if (a< =0 || b< =0 ||c< =0)
   J        type = "bad inputs"
   K        print type
   给出上面三角形伪码中的所有可行路径,进行每条路径测试。并找出达到C0和C1覆盖的最小测试案例集合。

选项

答案

解析 一条路径是利用某个测试案例执行的一个唯一的程序结点序列。在上述测试矩阵中有8个子域。这8个子域每一个子域恰好是一条路径。在该例子中,有16个T和F的不同组合。但是,其中有8个组合是不可行路径。也就是说,对于诙问题的条件不存在具有这8种T和F的组合的测试案例。很难确定一条路径是不可行还是难于找到执行该路径的测试案例。
下面的表给出了三角形伪代码中的8条可行路径。

C0可以用三个小于或等于零的相同的值来达到,即0, 0,0。
C1可以用两个测试案例来达到,分别是0,0,0和一个不等边三角形(即3,4,5)。
转载请注明原文地址:https://kaotiyun.com/show/4uDZ777K
0

相关试题推荐
最新回复(0)