刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
单选题
对于给定的C语言程序段,假设sta[10]=-1,需要多少个测试用例以满足分支覆盖的要求?
程序段如下:
```c
int MathMine(int x) {
int m = 0;
int i;
for (i = x - 1; i <= x + 1; i++) {
if (i < 0) continue;
if (i > 31) break;
if (sta[i] == -1) m++;
}
return m;
}
```
A
B
C
D
使用微信搜索喵呜刷题,轻松应对考试!
答案:
解析:
根据分支覆盖的概念,需要设计测试用例使得程序中的每个分支至少执行一次。在这个C语言程序段中,关键的分枝条件包括i<0、i>31以及sta[i]==-1。为了覆盖所有分支,我们需要考虑以下几种情况:
- 当i<0时,执行continue语句,跳过循环体中的剩余语句。
- 当i>31时,执行break语句,直接跳出循环。
- 当sta[i]==-1时,增加计数器m的值。
为了满足分支覆盖的要求,我们需要设计三个测试用例:
- 第一个测试用例使i<0成立,此时循环体会跳过。
- 第二个测试用例使i>31成立,此时循环会被中断。
- 第三个测试用例使sta[i]==-1成立,此时计数器m会增加。
因此,需要三个测试用例来满足分支覆盖的要求,故选A。
创作类型:
原创
本文链接:对于给定的C语言程序段,假设sta[10]=-1,需要多少个测试用例以满足分支覆盖的要求? 程序段
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!



