Anteriormente hemos visto cómo obtener el promedio de un arreglo; ahora vamos a ver cómo obtener la sumatoria y promedio de una matriz en C; será casi lo mismo pero con dos ciclos for.
Es decir, ahora vamos a obtener el promedio y la sumatoria de una matriz de dos dimensiones.
Sumatoria y promedio de matriz en C
El algoritmo es realmente sencillo. Recorremos la matriz y vamos sumando cada valor a una variable llamada sumatoria.
Para obtener el promedio, dividimos la sumatoria entre la cantidad de elementos, que será el resultado de multiplicar las filas por las columnas.
Al final vamos a tener la sumatoria y el promedio.
Código fuente
Ahora que ya he mencionado el algoritmo, veamos el código fuente. Primero definimos la matriz:
#define ALTURA 3
#define ANCHURA 3
int matriz[ALTURA][ANCHURA] = {
        {20,  50, 80},
        {500, 12, 44},
        {56,  4,  3},
};
Después declaramos la sumatoria y la cantidad de elementos:
// Necesitamos la sumatoria, al inicio es 0 y después vamos aumentándola
int sumatoria = 0;
int cantidadElementos = ALTURA * ANCHURA;
Ahora recorremos la matriz y vamos sumando cada elemento:
// Recorrer la matriz y sumar
for (int y = 0; y < ALTURA; y++) {
    for (int x = 0; x < ANCHURA; x++) {
        int elementoActual = matriz[y][x];
        sumatoria = sumatoria + elementoActual;
    }
}
Finalmente calculamos el promedio e imprimimos los valores:
// El promedio es = sumatoria / cantidadDeElementos
double promedio = (float) sumatoria / (float) cantidadElementos;
printf("Sumatoria: %d\n", sumatoria);
printf("Promedio: %0.2f\n", promedio);
Entonces el código completo queda como se ve a continuación:
/**
 * Sumatoria y promedio de matriz en C
 *
 * @author parzibyte
 * https://parzibyte.me/blog/
 *
 * */
#define ALTURA 3
#define ANCHURA 3
#include <stdio.h> // Para printf
int main() {
    int matriz[ALTURA][ANCHURA] = {
            {20,  50, 80},
            {500, 12, 44},
            {56,  4,  3},
    };
    // Necesitamos la sumatoria, al inicio es 0 y después vamos aumentándola
    int sumatoria = 0;
    int cantidadElementos = ALTURA * ANCHURA;
    // Recorrer la matriz y sumar
    for (int y = 0; y < ALTURA; y++) {
        for (int x = 0; x < ANCHURA; x++) {
            int elementoActual = matriz[y][x];
            sumatoria = sumatoria + elementoActual;
        }
    }
    // El promedio es = sumatoria / cantidadDeElementos
    double promedio = (float) sumatoria / (float) cantidadElementos;
    printf("Sumatoria: %d\n", sumatoria);
    printf("Promedio: %0.2f\n", promedio);
    return 0;
}
En mi caso la salida es la de la imagen:
