Functions
Recursion
A recursive function solves a problem by calling itself on a smaller input.
Recursion
recursion.c
#include <stdio.h>
int factorial(int n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
int main(void) {
int n = ;
int result = factorial(n);
printf("factorial=%d\n", result);
return 0;
}
#include <stdio.h>
int factorial(int n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
int main(void) {
int n = ;
int result = factorial(n);
printf("factorial=%d\n", result);
return 0;
}
#include <stdio.h>
int factorial(int n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
int main(void) {
int n = ;
int result = factorial(n);
printf("factorial=%d\n", result);
return 0;
}
base case
The base case stops the recursion.
recursive case
The recursive case calls the same function with a smaller value.