阅读下列C程序,回答问题,将解答填入答题纸的对应栏内。 【C程序】 int is binary(const void*buf,const size t buf—fen){ size t suspicious bytes=0; size t total—by

admin2021-03-19  34

问题 阅读下列C程序,回答问题,将解答填入答题纸的对应栏内。
【C程序】
int is binary(const void*buf,const size t buf—fen){
size t suspicious bytes=0;
size t total—bytes=bur len>512 7 512:buf—len;//1,2,3
const unsigned char*buf c=buf;
Size ti;
Size treturn code=0;
if(buf_len==0){//4
return code=0;//5
}else{
for(i=0;i<total—bytes;i++){//6
if(buf C==’\0’){//7
return code=1;//8
break;
)else if(buf C<7 I I buf C>14){//9,10
i++;
suspicious_bytes++;
if(i>=32){//11
return code=1;//12
break;
}
}
}
}
return return code;//1 3
}
请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。

选项

答案控制流图如下所示。 [*] 环路复杂度V(G)=8。

解析 本问题考查白盒测试用例设计方法:基本路径测试法。涉及的知识点包括:根据代码绘制控制流图、计算环路复杂度。控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。控制流图的节点代表一个基本块,定向边代表控制流的方向。
程序的环路复杂度等于控制流图中判定节点的个数加l,本题控制流图中判定节点个数为7,所以v(G)=8。
转载请注明原文地址:https://kaotiyun.com/show/OzPZ777K
0

最新回复(0)