In definite iteration, control variables are variables which are successively assigned (or bound to) values from a predetermined sequence.
In some programming languages, control variables are just ordinary variables used for manipulating the program flow. This is the case of C, Fortran, and Pascal, which allow for control variables to have their values changed within the loop body. However, some languages have special rules for control variables. In Ada, for instance, the control variable of a for-loop must remain constant within the loop body.