la ricorsione la hai capita ?, prova questo semplice programma, eventualmente utilizzando il debugger passo passo.
	Codice PHP:
	
#include <stdio.h>
int sum (int n) 
{
    if (n) return n+sum(n-1);
    else return 0;
}
int main (int argc, char *argv[])
{
    if (argc != 2) {
        printf("Specificare un intero\n");
        return (-1);
    }
    else {
        int n = atoi(argv[1]);
        printf("La somma dei primi %s interi è %d\n", argv[1], sum(n));
        printf("Avrei potuto anche usare la formula n*(n-1)/2=%d\n", n*(n+1) /2);
        return (0);
    }
} 
 
Comunque non ti preoccupare, la ricorsione è tosta da capire, bisogna concentrarsi molto e provare e provare.
Roma non fu fatta in un giorno
ciao
sergio