void DoWork(int x,int y,int z)
{ int k=0,j=0;
if((x>3)&&(z<10))
{ k=x*y-1; //语句块1
j=sqrt(k);
}
if((x= =4)||(y>5))
{ j=x*y+10; //语句块2
}
j=j%3; //语句块3
}
请画出上面程序段得流程图,并用语句覆盖法和分支覆盖法设计出测试用例!
{ int k=0,j=0;
if((x>3)&&(z<10))
{ k=x*y-1; //语句块1
j=sqrt(k);
}
if((x= =4)||(y>5))
{ j=x*y+10; //语句块2
}
j=j%3; //语句块3
}
请画出上面程序段得流程图,并用语句覆盖法和分支覆盖法设计出测试用例!
举一反三
- 给出下列算法中语句的时间复杂度 x = 0; y = 0; for (int i = 1; i <= n; i++) for (int j = 1; j <= i; j++) for (int k = 1; k <= j; k++) x=x+y;
- 下列语句有语法错的是( ) A: int x=1;y=2;z=3 B: for (int x=10,y=0;x>0;x++); C: while (x>5); D: for(; ;);
- 以下程序的输出结果是 ____。#define T(x,y) (x)<(y)?(x):(y)void main(){int i=10,j=15,k;k=10*T(i,j);printf("%d",k);}
- 运行如下程序段: x=1 y=1 z=1 For j=1 To 3 For k=1 To 3 If j=1 Then x=x+y+z Else If j=2 Then x=2*x+2*y+2*z Else x=3*x+3*y+3*z End If Next k Next j x的值应是______。
- 以下程序的运行结果是 。 #define MIN(x,y) (x)<(y)?(x):(y) main() { int i=10,j=15,k; k=10*MIN(i,j); printf(“%d”,k); }