En la construccion
for (expresión1; expresión2; expresión3)
proposición
proposición siguiente
primero se evalua EXPRESION1 (lo usual es que EXPRESION1
inicie el ciclo); despues, se evalua EXPRESION2, y si no es
cero ( VERDADERO), se ejecuta la PROPOSICION, se evalua
EXPRESION3 y el control regresa al principio del ciclo FOR, pero
ahora se salta la evaluacion de EXPRESION1. Lo comun es que
EXPRESION2 sea una expresion logica que controle la
iteracion. Este proceso continua hasta que EXPRESION2 sea igual a
cero ( FALSO), punto en el cual el control pasa a PROPOSICION
SIGUIENTE.
Algunos ejemplos son:
for (i = 1; i <= n; ++i)
printf("%d\n", i);
for (j = 2; k % j == 0; j++) {
printf("%d es divisor de %d\n", j, k);
suma += j;
}
En una proposicion FOR puede faltar alguna o todas las expresiones,
pero deben permanecer los signos punto y coma. Si falta la
EXPRESION1, no se efectua el paso de dar valor inicial como parte del
ciclo FOR.
Como regla especial, se establece que siempre que no este presente EXPRESION2, la prueba siempre dara como resultado VERDAD. Por tanto, el ciclo FOR es infinito en la codificacion
i = 1;
suma = 0;
for ( ; ; ) {
suma += i++;
printf("%d\n", suma);
}