刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

对于给定的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
3
B
4
C
5
D
6
使用微信搜索喵呜刷题,轻松应对考试!

答案:

A

解析:

根据分支覆盖的概念,需要设计测试用例使得程序中的每个分支至少执行一次。在这个C语言程序段中,关键的分枝条件包括i<0、i>31以及sta[i]==-1。为了覆盖所有分支,我们需要考虑以下几种情况:

  1. 当i<0时,执行continue语句,跳过循环体中的剩余语句。
  2. 当i>31时,执行break语句,直接跳出循环。
  3. 当sta[i]==-1时,增加计数器m的值。

为了满足分支覆盖的要求,我们需要设计三个测试用例:

  • 第一个测试用例使i<0成立,此时循环体会跳过。
  • 第二个测试用例使i>31成立,此时循环会被中断。
  • 第三个测试用例使sta[i]==-1成立,此时计数器m会增加。

因此,需要三个测试用例来满足分支覆盖的要求,故选A。

创作类型:
原创

本文链接:对于给定的C语言程序段,假设sta[10]=-1,需要多少个测试用例以满足分支覆盖的要求? 程序段

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share