下面是兩個程序流程圖,試分別用N-S圖和PAD表示之,并計算它們的McCabe復雜性度量。
對應的N-S圖如下。
對應PAD圖如下。
McCabe復雜性度量都為3。
有一種循環(huán)結構,叫做N+1/2循環(huán)。其流程圖如下所示。這種控制結構不屬于基本控制結構:它既不是先判斷型循環(huán),又不是后判斷型循環(huán)。試修改此流程圖,將它改為用基本控制結構表示的等效的流程圖。
設下圖給出的程序流程圖代表一個非結構化的程序,試問:
(1)為什么說它是一個非結構化的?
(2)設計一個等價的使用附加標志變量flag的結構化程序。
(3)設計一個使用break(用于代替goto)的程序。
(1)它是一個單入口、兩出口的結構,所以是一個非結構化的程序。
(2)等價的結構化程序: