Ciao a tutti! Ho scritto questa funzione ricorsiva per calcolare il massimo valore tra gli elementi di un array di lunghezza n. Funziona, ma volevo sapere se questo è l'unico modo per farlo oppure ne esiste un altro più corretto...grazie


//max=a[i]

codice:
int maxarray(int a[],int i, int max,int n)
{
 
    if (i>n)
       return max;
    else if (a[i]>max)   
       return maxarray(a,i+1,a[i],n);
    else
       return maxarray(a,i+1,max,n);
}