案例分析题

试题一
阅读下列 C 程序,回答问题,将解答填入答题纸的对应栏内。

【说明】

[C程序]
Int DoString(char*string){
      cbar *argv[100];
      Int argc=l;
      while(l) {  //1
      while(*string&& *string!='-')  //2,3
               String++; //4
               If(!*string) //5
                        break;  //6
               argv[argc]=string;
               while(*string && *string!="&& *string!='\n'&& *string!= '\t') //7,8,9,10
                          string++;  //11
                          argc+;  //12
                }
         Return0;  //13

问答题

请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。

【正确答案】

*string && * String !=’-’ T/F
!*String T/F
*string && * String !=’ ’ &&*String !=’\n’ && *String!=’\t’ T/F

【答案解析】
问答题

请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。

【正确答案】

【答案解析】
问答题

请给出问题2中控制流图的线性无关路径。

【正确答案】

1、2、5、6、13.
1、2、3、5、6、13
1、2、3、4、2、5、6、13
1、2、5、7、12、1. . .
1、2、5、7、8、12、1. . .
1、2、5、7、8、9、12、1. . .
1、2、5、7、8、9、10、12、1. . .
1、2、5、7、8、9、10、11、7、12、1. . .

【答案解析】