网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
阅读下列C程序,回答下列问题。
[C程序] int GetMaxDay( int year, intmonth ) { int maxday = 0; //1 if ( month >= 1 && month <= 12 ) { //2,3 if ( month == 2 ) { //4 if ( year % 4 == 0 ) { //5 if ( year % 100 == 0 ) { //6 if ( year % 400 == 0 ) } //7 maxday = 29; //8 else //9 maxday = 28; } else //10 maxday = 29; } else //11 maxday = 28; } else{ //12 if(month==4||month==6||month==9||month==11) //13, 14, 15, 16 maxday = 30; //17 else //18 maxday = 31; } } return maxday; //19 }
2、请画出上述程序的控制流图,并计算其环路复杂度VG.。
[C程序] int GetMaxDay( int year, intmonth ) { int maxday = 0; //1 if ( month >= 1 && month <= 12 ) { //2,3 if ( month == 2 ) { //4 if ( year % 4 == 0 ) { //5 if ( year % 100 == 0 ) { //6 if ( year % 400 == 0 ) } //7 maxday = 29; //8 else //9 maxday = 28; } else //10 maxday = 29; } else //11 maxday = 28; } else{ //12 if(month==4||month==6||month==9||month==11) //13, 14, 15, 16 maxday = 30; //17 else //18 maxday = 31; } } return maxday; //19 }
2、请画出上述程序的控制流图,并计算其环路复杂度VG.。
参考答案
参考解析
解析:控制流图
环路复杂度V(G)=11
【解析】
第二小题考查白盒测试用例设计方法之基本路径法。
涉及到的知识点包括根据代码绘制控制流图、计算环路复杂度。
控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。控制流图的节点代表一个基本块,定向边代表控制流的方向。其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套判断。本题程序中,if(month>=1 && month<=12)这条判断语句中的判定由两个条件组成,因此在画控制流图的时候需要拆开成两条判断语句。同理,if(month==4||month=6||month==9||month=11)这条判断语句中的判定由4个条件组成,因此在画控制流图的时候需要拆开成4条判断语句。这里需要注意的是,如果复合条件之间是"&&"的关系,则拆开后反应在控制流图上是沿左子树往下,反之如果条件之间是"||"的关系,则在控制流图上是沿右子树往下。
程序的环路复杂度等于控制流图中判定节点的个数加1,本题控制流图中判定节点个数为10,所以V(G)=11。
环路复杂度V(G)=11
【解析】
第二小题考查白盒测试用例设计方法之基本路径法。
涉及到的知识点包括根据代码绘制控制流图、计算环路复杂度。
控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。控制流图的节点代表一个基本块,定向边代表控制流的方向。其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套判断。本题程序中,if(month>=1 && month<=12)这条判断语句中的判定由两个条件组成,因此在画控制流图的时候需要拆开成两条判断语句。同理,if(month==4||month=6||month==9||month=11)这条判断语句中的判定由4个条件组成,因此在画控制流图的时候需要拆开成4条判断语句。这里需要注意的是,如果复合条件之间是"&&"的关系,则拆开后反应在控制流图上是沿左子树往下,反之如果条件之间是"||"的关系,则在控制流图上是沿右子树往下。
程序的环路复杂度等于控制流图中判定节点的个数加1,本题控制流图中判定节点个数为10,所以V(G)=11。
更多 “阅读下列C程序,回答下列问题。 [C程序] int GetMaxDay( int year, intmonth ) { int maxday = 0; //1 if ( month >= 1 //8 else //9 maxday = 28; } else //10 maxday = 29; } else //11 maxday = 28; } else{ //12 if(month==4||month==6||month==9||month==11) //13, 14, 15, 16 maxday = 30; //17 else //18 maxday = 31; } } return maxday; //19 } 2、请画出上述程序的控制流图,并计算其环路复杂度VG.。” 相关考题
考题
阅读下列说明,回答问题1至问题2,将解答填入对应栏内。【说明】利用Windows Server 2008架设邮件服务器,回答相应问题。邮件服务器通常提供POP3和SMTP两种服务,它们各有什么作用?
考题
阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写在对应栏内。【说明】阅读下面几段C++程序回答相应问题。比较下面两段程序的优缺点。①for (i=0; i<N; i++ ){if (condition)//DoSomething…else//DoOtherthing…}②if (condition) {for (i =0; i<N; i++ )//DoSomething}else {for (i=0; i <N; i++ )//DoOtherthing…}
考题
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。【问题1] (6分)请给出满足100%DC(判定覆盖)所需的逻辑条件。【问题2] (10分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。【问题3](4分)请给出问题2中控制流图的线性无关路径。
考题
阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【C程序】【问题1】(6分)请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。【问题2】(9分)请画出上述程序的控制流图,并计算其环路复杂度V(G)。【问题3】(5分)请给出问题2中控制流图的线性无关路径。
考题
阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C 语言编写的程序,按要求回答问题。
问题1:(6分) 请针对上述C程序,给出满足100%DC(判定覆盖)所需的逻辑条件。
问题2:(7分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
问题3:(3分)请给出【问题2】中控制流图的线性无关路径。
考题
阅读下列C程序,回答下列问题。
[C程序] int GetMaxDay( int year, intmonth ) { int maxday = 0; //1 if ( month >= 1 //8 else //9 maxday = 28; } else //10 maxday = 29; } else //11 maxday = 28; } else{ //12 if(month==4||month==6||month==9||month==11) //13, 14, 15, 16 maxday = 30; //17 else //18 maxday = 31; } } return maxday; //19 }
1、请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。
考题
阅读下列C程序,回答下列问题。
[C程序] int GetMaxDay( int year, intmonth ) { int maxday = 0; //1 if ( month >= 1 //8 else //9 maxday = 28; } else //10 maxday = 29; } else //11 maxday = 28; } else{ //12 if(month==4||month==6||month==9||month==11) //13, 14, 15, 16 maxday = 30; //17 else //18 maxday = 31; } } return maxday; //19 }
3、请给出问题2中控制流图的线性无关路径。
考题
阅读下列Java程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由Java语言编写的程序,按要求回答问题。
问题1:(2分) 请简述基本路径测试法的概念。
问题2:(8分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
问题3:(3分)请给出【问题2】中控制流图的线性无关路径。
考题
阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。
【问题1】(3分)请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。【问题2】(8分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
考题
阅读下列程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C 语言编写的程序,按要求回答问题。
问题1:(5分)请给出满足100%DC(判定覆盖)所需的逻辑条件。
问题2:(7分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
问题3:(3分)请给出【问题2】中控制流图的线性无关路径。
考题
阅读下列程序,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C 语言编写的程序,按要求回答问题。
main( ){int i,n; //1for(i=1;i
考题
阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。
问题1:(3分) 请针对上述C程序,给出满足100%DC(判定覆盖)所需的逻辑条件。
问题2:(7分)请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
问题3:(3分)请给出【问题2】中控制流图的线性无关路径。
考题
阅读下列程序,回答问题:
LDR R0, 0x22
LDR R1, 0x11
SUB R0, R0, R1
CMP R0, R1
执行上述程序后,CPSR的下列哪个标志位将发生变化()A、 CB、 VC、 ZD、 以上都不对
考题
填空题阅读下面程序段,回答指定问题: MOV AX,0086H MOV BL,77H ADD AL,BL DAAA DC AH,O 问:AH=(),AL=(),BL=(),CF=()。
考题
单选题阅读下列程序,回答问题:
LDR R0, 0x22
LDR R1, 0x11
SUB R0, R0, R1
CMP R0, R1
执行上述程序后,CPSR的下列哪个标志位将发生变化()A
CB
VC
ZD
以上都不对
热门标签
最新试卷