For en C: ejercicios resueltos con acumuladores y contadores

For en C: ejercicios resueltos paso a paso

Si buscas ejercicios for en C resueltos, aquí tienes un bloque práctico con casos típicos de clase y entrevistas iniciales.

El objetivo es dominar tres patrones clave del bucle for: acumulación, conteo y recorrido de arrays.

Enunciado

Resuelve estos 4 mini ejercicios usando for:

  1. calcular la suma de 1..n,
  2. contar cuántos pares hay en un array,
  3. obtener el máximo de un array,
  4. calcular la media de un array.

Solución en C

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <stdio.h>

int suma_1_n(int n) {
    int suma = 0;
    for (int i = 1; i <= n; i++) {
        suma += i;
    }
    return suma;
}

int contar_pares(const int a[], int n) {
    int contador = 0;
    for (int i = 0; i < n; i++) {
        if (a[i] % 2 == 0) {
            contador++;
        }
    }
    return contador;
}

int maximo_array(const int a[], int n) {
    int maximo = a[0];
    for (int i = 1; i < n; i++) {
        if (a[i] > maximo) {
            maximo = a[i];
        }
    }
    return maximo;
}

double media_array(const int a[], int n) {
    int suma = 0;
    for (int i = 0; i < n; i++) {
        suma += a[i];
    }
    return (double)suma / n;
}

int main(void) {
    int n = 10;
    int datos[] = {7, 2, 9, 4, 6, 3};
    int tam = (int)(sizeof(datos) / sizeof(datos[0]));

    printf("suma_1_n(%d) = %d\n", n, suma_1_n(n));
    printf("pares_en_array = %d\n", contar_pares(datos, tam));
    printf("maximo_array = %d\n", maximo_array(datos, tam));
    printf("media_array = %.2f\n", media_array(datos, tam));

    return 0;
}

Resultado esperado

1
2
3
4
suma_1_n(10) = 55
pares_en_array = 3
maximo_array = 9
media_array = 5.17

Errores frecuentes

  • Empezar y terminar mal el rango (i <= n frente a i < n).
  • No inicializar acumuladores o contadores en 0.
  • Dividir enteros al calcular media y perder decimales.
  • Acceder fuera de rango en arrays (i <= n en lugar de i < n).

Aplicación práctica

Estos patrones de for aparecen en casi cualquier ejercicio inicial de C:

  • procesamiento de listas de datos,
  • estadísticas simples,
  • validaciones y filtros por condición.

Si dominas estos 4 casos, te será más fácil pasar a problemas de arrays, matrices y ordenación.

Siguiente ejercicio recomendado

Práctica guiada y siguiente paso

Si quieres una ruta completa con progresión real de dificultad:

FAQ

¿For en C es mejor que while para empezar?

No es mejor ni peor en general, pero para recorridos con número de iteraciones conocido suele ser más claro.

¿Qué diferencia hay entre acumulador y contador?

Un acumulador suma o combina valores (por ejemplo suma += a[i]). Un contador incrementa ocurrencias (por ejemplo contador++).

¿Cómo practicar bucles for más rápido?

Empieza con problemas de una sola variable, luego añade arrays y finalmente combina dos condiciones dentro del mismo bucle.