Red de conocimiento informático - Conocimiento informático - Todavía no sé nada sobre la recursividad en C. ¿Puedes ayudarme a analizar la ejecución de este código con el mayor detalle posible?

Todavía no sé nada sobre la recursividad en C. ¿Puedes ayudarme a analizar la ejecución de este código con el mayor detalle posible?

El proceso de ejecución de este código

La función principal main llama a fun5(4)

Ingrese fun5(4) n==4, s=4 fun5 ( 3)

Ingrese fun5(3) n==3, s=3 fun5(2)

Ingrese fun5(2) n==2, s==2, imprima 2 , 2--------s

Devuelve fun5(3) n==3, s=3 fun5(2)=3 2=5, imprime 3, 5---- - ---s

Devuelve fun5(4) n==4, s=4 fun5(3)=4 5=9, imprime 4, 9--------s

Regresar a la función principal, imprimir 9

El programa completo en C es el siguiente

#include lt; fun5(int n) { long s; if((n==1)||(n==2)) s=2; else s=n fun5(n-1); ); printf(" d--------s\n", s); retorno(s);

}

main(){ largo x; =divertido5(4) ; printf("ld",x);