Una funzione che si chiama è nota come funzione ricorsiva. E, questa tecnica è conosciuta come ricorsione.
Come funziona la ricorsione?
void recurse(){ ... .. ... recurse(); ... .. ...}int main(){ ... .. ... recurse(); ... .. ...}

La ricorsione continua fino a quando una condizione è soddisfatta per impedirlo.
Per prevenire la ricorsione infinita, se…l’istruzione else (o un approccio simile) può essere utilizzata dove un ramo effettua la chiamata ricorsiva e altri no.,
Esempio: Somma di numeri naturali usando la ricorsione
Output
Enter a positive integer:3sum = 6
Inizialmente, la funzionesum() viene chiamata dalla funzionemain() con il numero passato come argomento.
Supponiamo che il valore di n all’interno di sum() sia inizialmente 3. Durante la chiamata di funzione successiva, 2 viene passato alla funzionesum(). Questo processo continua fino a quando n è uguale a 0.,
Quando n è uguale a 0, la condizione if fallisce e la parte else viene eseguita restituendo la somma di interi alla funzione main().

Vantaggi e svantaggi della ricorsione
La ricorsione rende il programma elegante. Tuttavia, se le prestazioni sono vitali, utilizzare invece i loop poiché la ricorsione è solitamente molto più lenta.
Detto questo, la ricorsione è un concetto importante. Viene spesso utilizzato nella struttura dei dati e negli algoritmi., Ad esempio, è comune utilizzare la ricorsione in problemi come l’attraversamento degli alberi.