Contenido del Curso
Fundamentos de C
Fundamentos de C
For, Continue
Loop For
El loop for
incorpora la inicialización del contador, la condición para salir del loop, y la actualización del contador.
Tomemos el ejemplo de la lección anterior (mostrar elementos de un array) y reformulémoslo usando un loop for
:
Main
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; for (int i = 0; i < 10; i++) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); } return 0; }
Flexibilidad de Loop
Puedes utilizar cualquier expresión válida como update counter
(en español significa contador de actualización). Esto significa que el contador puede adaptarse en base a cualquier regla válida, como (++x * 3) - 5
.
Además, el contador puede incrementarse por caracteres en lugar de por números.
Main
#include <stdio.h> int main() { for (char ch = 'a'; ch <= 'z'; ch++) { printf("ASCII value for %c is %d\n", ch, ch); } return 0; }
Nota
Ten en cuenta que los caracteres se almacenan como números en la memoria.
Incluso si omites partes del loop, como la inicialización del contador, el programa seguirá compilando. Sin embargo, el punto y coma ;
sigue siendo esencial:
Main
#include <stdio.h> int main() { int i = 0; // without counter initialization for (printf("It`s count initialization, but printf...\n"); i <= 4; i++) { printf("i = %d\n", i); } return 0; }
Puede utilizar la coma ,
para separar partes dentro del loop:
Main
#include <stdio.h> int main() { int i; int n; for (i = 0, n = 5; i <= 5; i++, n++) { printf("i = %d\t n = %d\n", i, n); } return 0; }
Continue
En los loops, los comandos break
y continue
son muy útiles. Mientras que la sentencia break
fuerza una salida del loop, el comando continue
provoca un salto a la siguiente iteración.
Consideremos un programa diseñado para excluir enteros negativos, utilizando el operador continue
:
Main
#include <stdio.h> int main() { int array[] = { 124, 235, -321, 32, 54, -549, 23445, 5534, -433 }; printf("Positive elements of array:\n"); for (int i = 0; i < 10; i++) { if (array[i] < 0) { continue; } printf("%d ", array[i]); } return 0; }
Nuevos Operadores
Los siguientes operadores también pueden funcionar como expresiones para actualizar el contador:
Operador | Ejemplo de Expresión | Descripción |
+= | a += 5 | Equivale a a = a + 5 |
-= | a -= 5 | Equivale a a = a - 5 |
*= | a *= 5 | Equivale a a = a * 5 |
/= | a /= 5 | Equivale a a = a / 5 |
%= | a %= 5 | Equivalente a a = a % 5 |
¡Gracias por tus comentarios!