Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
For, Continuar | Control de Declaraciones
Fundamentos de C
course content

Contenido del Curso

Fundamentos de C

Fundamentos de C

1. Introducción
2. Datos
3. Operadores
4. Control de Declaraciones
5. Funciones
6. Punteros

book
For, Continuar

Bucle For

El bucle for incorpora la inicialización del contador, la condición para salir del bucle y la actualización del contador.

Tomemos el ejemplo de la lección anterior (mostrando elementos de un array) y reformulémoslo usando un bucle for:

c

Main

copy
1234567891011121314
#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 del Bucle

Puedes usar cualquier expresión válida como el update counter. Esto significa que el contador puede adaptarse según cualquier regla válida, como (++x * 3) - 5.

Además, el contador puede incrementarse por caracteres en lugar de números.

c

Main

copy
12345678910
#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 bucle, como la inicialización del contador, el programa aún se compilará. Sin embargo, el punto y coma ; sigue siendo esencial:

c

Main

copy
12345678910111213
#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; }

Puedes usar la coma , para separar partes dentro del bucle:

c

Main

copy
1234567891011121314
#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; }

Continuar

En los bucles, tanto los comandos break como continue son útiles. Mientras que la declaración break fuerza una salida del bucle, el comando continue provoca un salto a la siguiente iteración.

Considere un programa diseñado para excluir enteros negativos, utilizando el operador continue:

c

Main

copy
123456789101112131415161718192021
#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:

OperatorExpression ExampleDescription
+=a += 5Equivalent to a = a + 5
-=a -= 5Equivalent to a = a - 5
*=a *= 5Equivalent to a = a * 5
/=a /= 5Equivalent to a = a / 5
%=a %= 5Equivalent to a = a % 5
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 6
We're sorry to hear that something went wrong. What happened?
some-alt