// Repaso de arreglos: capacidad, longitud y paso a funciones.
#include <stdio.h>

#define CAPACITY 8

int sum(const int a[], int n) {
    int total = 0;
    for (int i = 0; i < n; i++) {
        total = total + a[i];
    }
    return total;
}

// Cambia los elementos de quien llama: por eso no lleva const.
void add_bonus(int a[], int n, int bonus) {
    for (int i = 0; i < n; i++) {
        a[i] = a[i] + bonus;
    }
}

int main(void) {
    int grades[CAPACITY] = {14, 9, 17, 11};
    int n = 4;
    printf("sizeof(grades) = %zu bytes, capacidad %d, longitud %d\n", sizeof(grades), CAPACITY, n);
    printf("Suma: %d\n", sum(grades, n));
    printf("Suma de las 2 primeras: %d\n", sum(grades, 2));
    add_bonus(grades, n, 1);
    printf("Con un punto más: %d\n", sum(grades, n));
    return 0;
}
