设有一段程序如下: if((a==b)and((c==d)or(e==f)))do S1 else if((p==q)or(s==t))do S2 else do S3 满足判定/条件覆盖的要求下,最少的测试用例数目是______。A.6B.8C.3D.4

题目

设有一段程序如下: if((a==b)and((c==d)or(e==f)))do S1 else if((p==q)or(s==t))do S2 else do S3 满足判定/条件覆盖的要求下,最少的测试用例数目是______。

A.6

B.8

C.3

D.4


相似考题
参考答案和解析
正确答案:C
解析:判定/条件覆盖,就是设计足够的测试用例,使得判定语句中每个条件的所有可能取值至少评价一次,同时每个判定语句本身所有可能分支也至少评价一次。
  本程序一共有两个判定语句,三条路径。
  若以1代表某一个条件为真,O代表为假,则对于(a==b)、(c==d)、(e==f)、(p==q)、(s==t)这五个条件,取不同的真值组合,即可设计出相应的测试用例,达到判定/条件覆盖的要求。在这里,先取(a==b)、(c==d)、(e==f) 为101,(p==q)、(s==t) 为任意值,然后取全部五个条件为010 11和010 00,即能达到判定/条件覆盖的要求。
更多“设有一段程序如下:if((a==b)and((c==d)or(e==f)))do S1else if((p==q)or(s==t))do S2else do S3 ”相关问题
  • 第1题:

    7、以下能正确计算1×2×3×4...×10的程序段是

    A.i=1; s=1; do { s=s*i; i++; } while(i<=10);

    B.do { i=1; s=1; s=s*i; i++; } while(i<=10);

    C.do { i=1; s=0; s=s*i; i++; } while(i<=10);

    D.i=1; s=0; do { s=s*i; i++; } while(i<=10);


    1000

  • 第2题:

    以下能正确计算1×2×3×4...×10的程序段是

    A.i=1; s=1; do { s=s*i; i++; } while(i<=10);

    B.do { i=1; s=1; s=s*i; i++; } while(i<=10);

    C.do { i=1; s=0; s=s*i; i++; } while(i<=10);

    D.i=1; s=0; do { s=s*i; i++; } while(i<=10);


    C

  • 第3题:

    以下能正确计算10!的程序段是 。

    A.do {i=1;s=1;; s=s*i; i++; }while(i<=10);

    B.do{i=1;s=0 s=s*i; i++; while(i<=10);

    C.i=1;s=1; do{s=s*i; i++; }while(i<=10);

    D.i=1;s=0; do{s=s*i; i++; }while(i<=10);


    死循环

  • 第4题:

    15、以下能正确计算1×2×3×4...×10的程序段是

    A.i=1; s=1; do { s=s*i; i++; } while(i<=10);

    B.do { i=1; s=1; s=s*i; i++; } while(i<=10);

    C.do { i=1; s=0; s=s*i; i++; } while(i<=10);

    D.i=1; s=0; do { s=s*i; i++; } while(i<=10);


    答:期间以时、日、月、年计算。实际计算时,应遵循以下三项规则:(1)期间开始的时和日,不计算在期间内。期间以小时为单位计算的,应当从下一个小时起算。期间以日为单位计算的,应当从第2日起算。期间以月和年为单位计算的,由于它们实际上仍然都是由日组成的,因此同样应从第二日开始计算,并以期间届满月的相对日为期间届满日;期间届满月没有相对日的,则应以该月的最后一日为期间届满日。(2)期间届满的最后一日是节假日的,以节假日后的第一日为期间届满的日期。“节假日”,是指国家法定的全国性节假日及少数民族的传统性节日,不包括某些地区或单位自定的“节假日”。应当注意的是,节假日在期间当中的,不予扣除。(3)期间不包括在途时间,诉讼文书在期满前交邮的,不算过期。在途时间,是指诉讼文书在邮寄途中所花费的时间。

  • 第5题:

    与while(*s++ = *t++ );等价的程序段是

    A.do { *s = *t++; } while (*s++ );

    B.while (*t ) *s++ = *t++;

    C.do { *s++ = *t++; } while (*t );

    D.while (*s ) *s++ = *t++;


    A

  • 第6题:

    以下能正确计算1×2×3×…×10的程序段是 。

    A.do {i=1;s=1; s=s*i; i++; } while(i<=10);

    B.do {i=1;s=0; s=s*i; i++; } while(i<=10);

    C.i=1;s=1; do {s=s*i; i++; } while(i<=10);

    D.i=1;s=0; do {s=s*i; i++; } while(i<=10);


    B