程序模块的出口处理 | +-- 处理1 | +<< 判断条件 -+-Y-+-- 处理2 | | | +-N-+>> 出口返回1 | | +-- 处理3 | +>> 出口返回2
子程序/函数调用 | +-- 处理1 | +-- [调用的子程序/函数名称] | +-- 处理2
[子程序/函数名称] (Note:子程序/函数功能或设计思路简要说明) | +== 入口参数1 | +== 入口参数2 | +-- 处理1 | +-- 处理2 | +>> 返回值/出口处理
符号综合说明: ============== "|" 为 垂直纵向的流程线 "+" 为 交叉点 "-" 为 水平横向的流程线 "+--" 为 顺序执行语句 "+==" 为 入口参数 "+<<" 为 条件判断。相当于 if 语句 "+>>" 为 返回/退出 子程序/函数。相当于 exit sub, exit function, return "+EE" 为 多路分支。相当于 switch, select case "+##" 为 循环。 相当于 while, do .. loop, for, scan .. end scan "+((" 为 继续循环。 相当于 loop, do .. while(), do .. loop() "+))" 为 退出循环。 相当于 exit for, exit do
"-+-Y-+--" 用在 "+<<" 之后,特定地表示条件成立的语句分支 "-+-N-+--" 用在 "+<<" 之后,特定地表示条件不成立的语句分支 "-+-结果的描述-+--" 用在 "+EE" 之后,特定地表示多路分支条件的各种结果的语句分支 "[函数/子程序的名称]" 用在执行语句的描述中,或者一个流程图的最顶端, 表示一个函数/子程序的调用和开始 "(解释/备注/详细说明/注释)" 可以用在任何位置, 作为注释
综合举例: ========= 说明: 下例中的 简要/详细操作描述的3种表达方式的最终程序是相同的.只是表达方式不同而已.
值得说明的是, 这种表达方式 与 子程序/函数的表达方式除了使用的符号不同外, 所表达的意思也是不同的, 子程序/函数的表达的是一种调用, 子程序/函数内部的语句不属于调用者本身, 而 这种表达方式 内部的语句本来就是属于调用者本身的(或许不能说是调用者).
一共有 A,B,C,D 四个处理顺序执行, 其中处理B由处理1,2 两个详细操作组成, 而处理C由处理3,4 两个详细操作组成.
============================================================
[简要/详细操作描述表达方式1] | +-- 处理A的详细操作描述 | +-- [处理B的简要描述/名称] | +-- [处理C的简要描述/名称] | +-- 处理D的详细操作描述 | +>> 结束
[处理B的简要描述/名称] | +-- 处理1的详细操作描述 | +-- 处理2的详细操作描述 | +>> 返回
[处理C的简要描述/名称] | +-- 处理3的详细操作描述 | +-- 处理4的详细操作描述 | +>> 返回
============================================================
[简要/详细操作描述表达方式2] | +-- 处理A的详细操作描述 | +-- 处理1的详细操作描述 | +-- 处理2的详细操作描述 | +-- 处理3的详细操作描述 | +-- 处理4的详细操作描述 | +-- 处理D的详细操作描述 | +>> 结束
============================================================
[简要/详细操作描述表达方式3] | +-- 处理A的详细操作描述 | +-[处理B的简要描述/名称]-+-- 处理1的详细操作 | | | +-- 处理2的详细操作 | | +-[处理C的简要描述/名称]-+-- 处理3的详细操作 | | | +-- 处理4的详细操作 | | +-- 处理D的详细操作 | +>> 结束
============================================================
经典论坛讨论: http://bbs.blueidea.com/thread-2413468-1-1.html
出处:蓝色理想
责任编辑:blue
上一页 GSSY流程图 [1] 下一页
◎进入论坛网络编程版块参加讨论
|