题目

【说明】

以下代码由C语言书写,在输入3个整数后,能够输出最大数和最小数。

int main(void)
{
int a, b, c, max, min;
printf("input three numbers:    ");
scanf("%d%d%d", &a, &b, &c);
if(a>b)                   /*判断1*/
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
if(max<c)                /*判断2*/
max=c;
else if(min>c)           /*判断3*/
min=c;
printf("max=%d
min=%d", max, min);
return 0;
}

13、【问题1】

请画出该程序段的控制流图,并分析该控制流图中有多少条线性独立路径(VG.的值)。

14、【问题2】

为了用分支(判定)覆盖方法测试该程序,需要设计测试用例,使其能对该程序中的每个判断语句的各种分支情况全部进行过测试。

对两组输入数据(1)a=3,b=5,c=7;(2)a=4,b=6,c=5,请分别写出程序中各个判断语句的执行结果(以T表示真,以F表示假),填入答题纸的相应栏中。

15、【问题3】

上述两组测试数据是否能实现该程序的分支(判定)覆盖?如果能,请说明理由。如果不能,请再增设一组输入数据,使其能实现分支(判定)覆盖。

作答
本题暂不支持做答,请点击“解析“以对比解题思路
答案/解析
查看试卷及答案