# How to Print Fibonacci Series using Recursion in C, C++

View: 809    Dowload: 0   Comment: 0   Post by: hanhga   Category: C / C++ / MFC   Fields: Other

Write a program to print Fibonacci Series using recursion. Fibonacci series is a very important program in terms of interviews. To make this program little tough interviewer ask to write a fibonacci series code using recursion.

You can check my previous post to use iterative approach to print Fibonacci series.

## What is Recursion.

In recursion function call itself until the base condition is reached.
Read explanation of recursion and what’s the difference between iterative and recursive function.

Objective Question on Recursion.

### Fibonacci Series

It is the series of numbers, such that the next number is the sum of previous two numbers.

0 ,1 , 1, 2, 3, 5, 8, 13, 21 ……………….

In Fibonacci series first two numbers is 0 and 1. Next number is the sum of first two numbers.

0 + 1 = 1

1 + 1 = 2

2 + 1 = 3

3 + 2 = 5

## Print Fibonacci Series using Recursion in C

Now you have learned what is fibonacci series. Let’s write a code using recursion to generate fibonacci series.

```#include <stdio.h>

int fibonacci(int num){

if(num==0){

return 0;

}else if(num==1){

return 1;

}  else {

return (fibonacci(num-1) + fibonacci(num-2));
}

}

main()
{

/* Assume we want to print first six number of fibonacci series. */

int num = 6,i;

for(i = 0; i < num; i++) {

/* Call fibonacci function. */

printf(" %d ",fibonacci(i));

}
}```

Program Logic

1. Return 0 if the input number is 0, 1 if the input number is 1.

2. If number is greater than 1 then return func(n-1) + func(n-2)func is the name of function.

Let’s explain this, suppose num is 4. As per fibonacci function last else condition is satisfied.

return fibonacci(n-1) + fibonacci (n-2);

```/* When 4 is input, as per else condition. */

fibonacci(3) + fibonacci(2)

/* fibonacci(3) and fibonacci(2), calls function */

(fibonacci(1) + fibonacci (2)) + (fibonacci(0) + fibonacci(1))

1 + (fibonacci (1) + fibonacci (0) ) + 0 + 1

1 + 1 + 1

3```

Fourth element of fibonacci series is 3.

## Print Fibonacci Series using Recursion in C++

```#include <iostream>
using namespace std;

int fibonacci (int num) {

if ( num == 0 ) {

return 0;

} else if ( num == 1 ) {

return 1;

} else {

return fibonacci (num - 1) + fibonacci (num - 2);
}

}

int main() {

int num;

cout << " Enter a number (Positive number only) "; cin >> num;

for (int i = 0 ; i < num; i++) {

cout << fibonacci(i) << " ";
}

return 0;
}```

Write a program to print Fibonacci Series using recursion. Fibonacci series is a very important program in terms of interviews. To make this program little tough interviewer ask to write a fibonacci series code using recursion.

Posted on 28-09-2016

#### Comment:

To comment you must be logged in members.

## Files with category

• ### Sound Player in Visual Studio C++ .NET

Category: C / C++ / MFC     Fields: none

This sound player project use the libZPlay from http://libzplay.sourceforge.net . Methods are called from library libzplay.dll with [InteropServices::DllImport("")]. The use of the library is relatively easy.

• ### Quiz Management System in C++

Category: C / C++ / MFC     Fields: none

Hello World...!!! Though I am not an expert programmer but today i want to share my little knowledge of C/C++ programming by sharing this simple Quiz Management System with you people. I hope this may help some students in their mini...

• ### General Quiz

Category: C / C++ / MFC     Fields: none

This is one of my first WPF projects, and it may be used as a template for a quiz test. The code can be improved but I think its useful for the ones who don't have experience with WPF.

• ### SqlCommand to T-SQL Printer

Category: C / C++ / MFC     Fields: Other

In this article, we are going to see a log printer working with Entity Framework that converts SqlCommand to a completely executable T-SQL statement, including all parameter declarations and write to log file. Once a command is executed, You will see...

• ### Windows Clipboard Formats

Category: C / C++ / MFC     Fields: Other

This reference gives you an overview of standard and common clipboard formats with links to the data structures.

• ### Insert 1 element at the beginning of an array managed by a pointer without moving

Category: C / C++ / MFC     Fields: Other

Insert 1 element at the beginning of an array managed by a pointer without moving

• ### An autonomous and concealed IPC mechanism

Category: C / C++ / MFC     Fields: none

What if you have one or more modules, running independently in a system, which should collaborate between each other? Well, they will have to be able to exchange data, organized as events, messages or packets of some sort.

• ### How to Swap Two Numbers using Call by Reference in C

Category: C / C++ / MFC     Fields: Other

How to swap two numbers using call by reference in C , C++. In the interviews interviewer generally asked the difference between call by reference and call by value

File suggestion for you
• Php&mySql - 2852 view This Human Resource Management System PHP MySQL Source Codes is done using the programming language Asp.net and the data source SQL Server. This...

• WordPress template - 730 view SKT Magazine is a superfine free news- magazine WordPress theme ideal for online newspaper, publishing reviews, and editorial style websites. It is...

• Php&mySql - 468 view In part one, we covered the basics of Phake and demonstrated ways of executing tasks with it, covering groups, dependencies, and arguments. In this...

• Mobile applications - 5312 view We'll introduce a few concepts without going into too much detail. We'll look at: Basic file access, Clearing the screen, Drawing images, Using a...

• iPhone OS - 768 view In this tutorial, I am going to introduce you to tvOS development by creating a basic tvOS application.

Mega tags
• Php&mySql - 529 view If you’re already deep in PHP, then some of the stuff in this section...

• Form - Instructions - 775 view A. But factors have been shown to affect the reliability of the...

• References - 943 view Android Database TutorialAndroid Database ToolsThe first tool is...

• Php&mySql - 407 view In this post, we’ll go through the process of getting it up and...

• Php&mySql - 389 view Simply put, failing fast and loudly means that when an error occurs,...

• Autodesk 3DS Max - 677 view You'll start by creating a simple proxy model of a minigun, then move...

• Form - Instructions - 3281 view Ever had the need to block all other forms and controls when a...

• WordPress template - 478 view Today, codetitle released Musica – a nice magazine wordpress theme....

• Javascript - 555 view In spring mvc form submit tutorial, we learned about displaying...

• Flash template, Flash game - 1087 view Share Flash Template Music Dance intro