Moving (Running / Rolling ) Average in C

I am really struggling with writing code for Array_MovingAverage function at the botom of this template. I am beginner. Been trying to figure it out myself whole day, no luck. Any ideas or guidance how to do this?

#include "array.h"

#include <stdio.h>  

void Array_Print(const int array[], size_t size) {
            if(array != NULL) { 
            for (size_t i = 0; i < size; ++i) {
                printf("%i", array[i]);
               if (i < (size - 1)) printf(" ");
            }
            printf("\n");
          }

void Array_Fill(int array[], size_t size, int value) {

    if(array != NULL) {
        for (size_t i = 0; i < size; ++i) {
            array[i]=value;
        }
      }
    }

void Array_Clear(int array[], size_t size) {

    if(array != NULL) {

        for (size_t i = 0; i < size; ++i) {
            array[i]=0;
        }
      }
    }

bool Array_MovingAverage(const int inputSeries[], size_t inputSize, size_t window, float output[], size_t outputSize) {
    
/*
    -------------------------Any ideas how to write this part ? --------------------------
    
  (void)inputSeries;
  (void)inputSize;
  (void)window;
  (void)output;
  (void)outputSize;

 Computes the moving average from given input series. The average is computed over defined  window 
 and each result is returned by  output array. The output array is filled from zero index.

  param[in]   inputSeries Pointer to input array with samples.
  param[in]   inputSize   Length of input array.
  param[in]   window      Size of average window.
  param[out]  output      Pointer to output array.
  param[in]   outputSize  Length of output array.

  return Returns true if arguments are valid, false otherwise.
*/

  return false;
}