C Programs using Recursion (BCA Notes)
1. Fibonacci Series using Recursion
Logic: F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2)
#include <stdio.h>
int fibonacci(int n)
{
if(n == 0)
return 0;
else if(n == 1)
return 1;
else
return fibonacci(n-1) + fibonacci(n-2);
}
int main()
{
int n, i;
printf("Enter number of terms: ");
scanf("%d", &n);
for(i = 0; i < n; i++)
{
printf("%d ", fibonacci(i));
}
return 0;
}
2. Factorial using Recursion
Logic: n! = n × (n-1)! , Base case: 0! = 1
#include <stdio.h>
int factorial(int n)
{
if(n == 0 || n == 1)
return 1;
else
return n * factorial(n-1);
}
int main()
{
int n;
printf("Enter a number: ");
scanf("%d", &n);
printf("Factorial of %d = %d", n, factorial(n));
return 0;
}