控制表

控制表是一个决定控制流程或是主要影响控制流程的表。关于控制表的结构或内容没有硬性的规定,其特点是其可以影响控制流程的能力。这类表格的设计有时称为「表格驱动设计」(不过后者多半是指由外部的表格自动生成代码,而不是在程序中的表格)。以有限状态机为基础的自动机编程有时会用控制表为其实现方式。若控制表有几个不同的层次,其行为就类似UML状态机。
控制表有时会以关联表的方式表示,其中会有对应的条件表达式及子进程。控制表可以简化一些类似的程序叙述,而且若是二维的控制表,在阅读及更新上都比一维特性的代码要容易维护,有时控制表甚至可以让非程序员来维护。计算机科学家高德纳在1974年提出的论文《Structured Programming with go to Statements》中就提到「多路分支是一种重要的编程技术,但常常被一些数量不足的if指令取代」。