Aquí tienes un ejemplo completo de una función recursiva para calcular el factorial de un número en C:
#include <stdio.h>
int factorial(int n) {
// definimos la condición base
if (n == 0) {
return 1;
}
// llamamos a la función recursivamente
else {
return n * factorial(n-1);
}
}
int main() {
// ejemplo de uso de la función factorial
int resultado = factorial(5);
printf("El factorial de 5 es: %d", resultado);
return 0;
}
En este ejemplo, la función factorial()
toma un número entero n
como argumento y devuelve su factorial. Primero se verifica la condición base, que es cuando n
es igual a 0, en cuyo caso el factorial es 1. De lo contrario, se llama a la función recursivamente con un valor menor de n
(es decir, n-1
) y se multiplica por n
. Finalmente, el resultado se devuelve como el resultado de la función.
En el ejemplo de uso, se llama a la función factorial()
con un argumento de 5 y se guarda el resultado en la variable resultado
. Luego, se imprime el resultado usando la función printf()
. El resultado es 120, que es el factorial de 5.