Professional Documents
Culture Documents
WBT
WBT
6. function(n): int i = 2; while (n >= i*i) { if (n mod i == 0) { printf("%d * ", i); n = n / i; } else { i = i + 1; } } printf("%d", n);
i=2
n%i==0
Yes Print n ; n=n/i
Print n
End
Cyclomatic complexity: 3 Statement coverage: 1 ( n = 14) Branch coverage: 1 ( n = 14)
Begin
Switch(a%2) 7. function(a): switch (a mod 2) { case 0: printf("a is even"); break; case 1: printf("a is odd"); break; }
End
8. function(a): switch (a mod 2) { case 0: printf("a is even"); break; case 1: printf("a is odd"); break; default: printf("unknown"); break; }
Begin
Switch(a%2)
Yes Case: 0 No Case: 1 No Defaule: Print unknown Print a is odd Print a is even
End
Begin
9. function(s): for (int i=0; i<s.length; i++) { if (s[i] >= 'a' && s[i] <= 'z') s[i] = s[i] - 32; else if (s[i] >= 'A' && s[i] <= 'Z') s[i] = s[i] + 32; else if (s[i] >= '0' && s[i] <= '0') s[i] = 'x'; }
i=0
I<s.length
Yes i++
No
Yes s[i]=s[i]-32
Yes s[i]=s[i]+32
Yes
s[i]=x
End
Begin
10. function(s, a): for (int i=0; i<s.length; i++) { int j = 0; for (; j<a.length; j++) { if (s[i+j] != a[j]) break; } if (j >= a.length) { printf("Found a in s"); return; } }
i=0
No
i < s.length
Yes j=0
j < a.length
No
Yes Yes No
s[i+j] != a[j]
j>=a.length
No j ++
End
Cyclomatic complexity: 5 Statement coverage: 1 ( s=fhgi,a=g) Branch coverage: 2( s=fhgi,a=g) and s=fhgi,a=k) )