# C/C++ Program for Fibonacci Series Using Recursion

Series 0, 1, 1, 2, 3, 5, 8, 13, 21 . . . . . . . is a Fibonacci series. In Fibonacci series, each term is the sum of the two preceding terms.

The C and C++ program for Fibonacci series using recursion is given below.

Output:

### 18 thoughts on “C/C++ Program for Fibonacci Series Using Recursion”

1. i guess 0 should not have been a part of the series….
so in the function u should have used return fibbonacci(n)+fibbonacci(n-1)
please correct me if i am wrong

2. The while statement needs to be, while(i <= n)(line 24), and (int i = 0) needs to be initialized at 1(line 19), not at 0. Changing this will result in the proper value for any fibonacci(n). As is right now, it is giving you the value at fibonacci(n-1), hence the reason fibonacci(8) yields a value of 13.

1. #include

using namespace std;

int Fib(int n);

int main() {
int i;

for(i=1;i<=20;i++) {
cout << "Fib(" << i << ") = " << Fib(i) << endl;
}

return 0;
}

int Fib(int n) {
int returnValue;

// handle the base case first;
if (n == 1 or n == 2) {
returnValue = 1;
} else {
returnValue = Fib(n-1) + Fib(n-2);
}
return returnValue;
}

1. Can you help me with this, write
a recursive program to implement the
Fibonacci series a given number?

1. #include

using namespace std;

int Fib(int n);

int main() {
int i;

for(i=1;i<=20;i++) {
cout << "Fib(" << i << ") = " << Fib(i) << endl;
}

return 0;
}

int Fib(int n) {
int returnValue;

// handle the base case first;
if (n == 1 or n == 2) {
returnValue = 1;
} else {
returnValue = Fib(n-1) + Fib(n-2);
}
return returnValue;
}

3. i need to get the output as, if i enter 15 as input then i should get the answer as 0,1,1,2,3,5,8,13.so, where should i have to change the code?

4. Not actual Recursion. Its while loop which does the required part and not the method. Good to move the logic inside the method

void Recursion::FibonaciiSeries(int num)
{
static int print = 1;
static int next = 2;

if (num == 0)
{
return;
}
else
{
cout << print << " ";
int temp = print;
print = next;
next = print + temp;
FibonaciiSeries(num – 1);
}
}