- MATLAB程序設計及應用
- 郭斯羽等編著
- 909字
- 2022-05-06 19:27:54
3.2.1 程序流程圖簡介
程序流程圖對于梳理程序設計的思路、形象化程序的流程結構以及與他人交流程序的功能和實現細節具有重要作用。同時,程序流程圖也是一種具有推薦規范的比較標準的圖形。關于程序流程圖的繪制規范,感興趣的讀者可以參考國家推薦標準GB/T 1526—1989。本節對最常見的程序流程圖的符號和繪制規范進行介紹。
程序流程圖用來表示程序中的操作順序,其中包括能表明處理操作的處理符號、表明控制流的流線符號和方便閱讀與繪制程序流程圖的特殊符號。程序流程圖常用符號見表3-1。
表3-1 程序流程圖常用符號

圖3-9和圖3-10所示是一個例子的程序流程圖,它們實際上是一個程序的流程圖,但是由于該流程較復雜,繪制成一個流程圖后所占篇幅偏大,因此分為兩個子流程圖繪制,并且使用了連接符來說明子圖之間的連接關系。此外,在圖3-10中還使用了一個子程序“重連節點”,該子程序的流程應在其他地方給出,只不過在這個示例中從略了。

圖3-9 程序子流程圖(第一部分)

圖3-10 程序子流程圖(第二部分)
下面結合例子說明繪制程序流程圖的一些注意事項。
(1)流線的走向一般是從上或從左流入,從下或從右流出。不過,在實際繪制過程中也時常出現為了使流程圖更為緊湊而不嚴格按此執行的情況。
(2)如果判斷框僅有兩個出口,分別對應判斷條件成立(標注為“是”或“Y”)和不成立(標注為“否”或“N”)兩種情況,那么一般是條件成立的出口向下,條件不成立的出口向右。同樣,為了流程圖緊湊,可以不嚴格按此執行。
(3)在程序流程圖中,流線可以發生匯聚。此時,匯聚點應該在流線上,而不應該直接匯聚到過程框或判斷框等圖框上。例如,圖3-10中重連成功后的流線應匯聚在將數據發送至節點的過程框的入口流線上,而不應該作為該過程框的一條新的入口流線直接連到該過程框上。
(4)流線盡可能不要交叉,可通過連接符或子程序等手段來避免。實在無法避免,則應設法明確區分交叉點和流線的匯聚點,以免造成對程序流程的錯誤理解。
(5)不要出現如圖3-11所示的流線的無條件分岔。如果要表示并行處理,應明確使用表3-1中的并行符號。實際上,除非是明確進行并行算法的開發,一般的程序包括本書的所有程序,本質上都是串行程序而非并行程序,因此不會用到并行符號。

圖3-11 流線的無條件分岔
- VMware View Security Essentials
- Fundamentals of Linux
- 自己動手寫搜索引擎
- Java 9 Concurrency Cookbook(Second Edition)
- Magento 2 Theme Design(Second Edition)
- 程序員考試案例梳理、真題透解與強化訓練
- PHP 編程從入門到實踐
- Mastering RStudio:Develop,Communicate,and Collaborate with R
- Java EE 8 Application Development
- Go語言精進之路:從新手到高手的編程思想、方法和技巧(2)
- Learning AngularJS for .NET Developers
- Learning jQuery(Fourth Edition)
- 軟件項目管理實用教程
- Android群英傳
- Python一行流:像專家一樣寫代碼