In this tutorial we are going to learn how to print Fibonacci series in c program using recursion.
Before moving directly on the writing Fibonacci series in c program using recursion, first you should know
What is Fibonacci Series?
A Fibonacci series is a series in which next number is a sum of previous two numbers.
For example : 0, 1, 1, 2, 3, 5, 8 ……
In Fibonacci Series, first number starts with 0 and second is with 1 and then its grow like,
0
1
0 + 1 = 1
1 + 1 = 2
1 + 2 = 3
2 + 3 = 5 and
so on…
How our program will behave?
Its Logic is different from Fibonacci series program in c using iterative method.
Here we have a function named fibonacci() which will take a input and return next element as output. Each time it will call itself to calculate the elements of the series.
Like if someone given 6 as a input then our program should return,
0, 1, 1, 2, 3, 5
C program to print Fibonacci series program using recursive methods
#include<stdio.h>
#include<conio.h>
int fibonacci(int);
int main(){ 
	int n, i; 
	printf("Enter the number of element you want in series :"); 
	scanf("%d",&n); 
	printf("fibonacci series is : \n");
	for(i=0;i<n;i++) { 
		printf("%d \n",fibonacci(i));
	}
	getch();
}
int fibonacci(int i){ 
	if(i==0) return 0; 
	else if(i==1) return 1; 
	else return (fibonacci(i-1)+fibonacci(i-2));
} 
Output:
Enter the number of element you want in series :6
fibonacci series is : 
0 
1 
1 
2 
3 
5
Explanation of program written in C to print Fibonacci series using recursive method
- Here first of all we have declared one function named fibonacci which will take integer as a input and will return a next integer element.
 - In the above program I have taken 2 variables n and i of integer type.
 - Now our main logic will start from a “for loop”. This loop will be called n number of times, where n is given as input.
 - And each time when loop condition will satisfy the value of i will pass as a parameter to fibonacci() method as a input.
 - In the body of fibonaaci(int i) function we have nested if-else.
 - If input is 0 then it will return 0.
 - It input is 1 then it will return 1.
 - And if the value is greater then one then calculation will perform using fibonacci(i-1) + fibonacci(i-2).
 
I believe Fibonacci Series program is now clear to you.