Leggere o generare una sequenza di n numeri interi e un k <= n. Stampare l'array letto o generato. Individuare e stampare la sequenza di k numeri contigui avente somma massima.

Esempio. Se k = 3 e l’array è:

[3, 5, 8, 1, 9, 7]

La prima sequenza di tre elementi (3, 5, 8) ha somma 16,
la seconda sequenza (5, 8, 1) ha somma 14,
la terza (8, 1, 9) ha somma 18,
la quarta (1, 9, 7) ha somma 17,
per cui viene stampata la sequenza (8, 1, 9).

IMPORTANTE: Organizzare il programma in funzioni (una per leggere l’ array, una per stamparlo, una per individuare la sequenza massima). Non utilizzare array ausiliari, non introdurre variabili globali.

Queste sono le funzioni che ho creato per generare l'array
codice:
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
void crearray(int A[MAX], int n);
void stamparray(int A[MAX], int n);

main()
{
      int i, n, A[MAX];
      printf("Quanti elementi vuoi inserire nell' array?");
      scanf("%d", &n);
      crearray(A, n);
      stamparray(A, n);
      system("PAUSE");
      return 0;
}

void crearray(int A[MAX], int n)
{
     int i;
     printf("Inserisci gli elementi dell'array: ");
     for(i=0; i<n; i++)
     scanf("%d", &A[i]);
     return;
}

void stamparray (int A[MAX], int n)
{
     int i;
     for(i=0; i<n; i++)
     printf("%d", A[i]);
     printf("\n\n");
     return;
}
Il mio problema è creare la funzione per individuare la somma massima tra le sequenze, non riuscendo a recuperare tutte le sequenze di k numeri dell'array.
Spero in un vostro gentile aiuto.
Grazie in anticipo