首页
登录
从业资格
阅读下列C程序,回答下列问题。 请画出上述程序的控制流图,并计算其环路复杂
阅读下列C程序,回答下列问题。 请画出上述程序的控制流图,并计算其环路复杂
免费题库
2022-08-02
50
问题
阅读下列C程序,回答下列问题。
请画出上述程序的控制流图,并计算其环路复杂度VG.。
选项
答案
解析
控制流图
第二小题考查白盒测试用例设计方法之基本路径法。涉及到的知识点包括根据代码绘制控制流图、计算环路复杂度。控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。控制流图的节点代表一个基本块,定向边代表控制流的方向。其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套判断。本题程序中,if(month>=1 && month<=12)这条判断语句中的判定由两个条件组成,因此在画控制流图的时候需要拆开成两条判断语句。同理,if(month==4||month=6||month==9||month=11)这条判断语句中的判定由4个条件组成,因此在画控制流图的时候需要拆开成4条判断语句。这里需要注意的是,如果复合条件之间是"&&"的关系,则拆开后反应在控制流图上是沿左子树往下,反之如果条件之间是"||"的关系,则在控制流图上是沿右子树往下。程序的环路复杂度等于控制流图中判定节点的个数加1,本题控制流图中判定节点个数为10,所以V(G)=11。
转载请注明原文地址:https://www.tihaiku.com/congyezige/2416693.html
本试题收录于:
中级 软件评测师题库软件水平考试初中高级分类
中级 软件评测师
软件水平考试初中高级
相关试题推荐
软件工程的基本原理不包括( )。A.分段管理软件开发,将复杂问题简化处理 B
编译过程中,词法分析不能( )。 ①去除源程序中的注释 ②识别记号(单词、
问卷的设计原则不包括( )。A.所选问题必须紧扣主题,先易后难 B.要尽量提
一个计算机算法是对特定问题求解步骤的一种描述。算法的( )是指算法能够对不合理
将某高级语言程序翻译为汇编语言形式的目标程序,该过程称为( )。A.编译 B
甲程序员为乙软件设计师开发的应用软件编写了操作说明书,并已交付用户使用,( )
专业程序员小王记录的编程心得体会中,( )并不正确。A.编程工作中记录日志很重
将源程序中多处使用的同一个常数定义为常量并命名,( )。A.提高了编译效率
若程序中定义了三个函数f1、f2和f3,并且函数f1执行时会调用f2、函数f2执
编译和解释是实现高级程序设计语言的两种方式,其区别主要在于( )。A.是否进行
随机试题
I______myeyesroundtheroombutsawnothingunusual.A、gazeB、tossedC、threwD、
A.actionB.butC.distractedD.absurdE.analogiesF.pullG.copyH.
Wetsui
下列财产中,可以设定抵押的是( )。A.车辆 B.土地所有权 C.
A.如上图所示 B.如上图所示 C.如上图所示 D.如上图所示
砌筑用砂浆的流动性以()表示。A.坍落度 B.稠度 C.和易性 D.粘
路基支挡工程中,按路基加固的不同部位分,下列不包括()。 A、坡面防护加固
共用题干 Inanagewhentechnologyisdevel
患者,林某,精神分裂症3年,近期出现攻击行为,下列针对家庭护理措施不正确的是A.
资产负债表是反映企业在某一特定日期( )的报表。 A.财务状况 B.现金流
最新回复
(
0
)