- C Programming Examples
- C Programming Examples
- C Print Hello World
- C Get Input from User
- C Print Integer
- C Add Two Numbers
- C Check Even or Odd
- C Check Prime or Not
- C Check Alphabet or Not
- C Check Vowel or Not
- C Check Leap Year or Not
- C Check Reverse equal Original
- C Add Subtract Multiply Divide
- C Make Calculator
- C Add Digits of Number
- C Calculate Average, Percentage
- C Calculate Arithmetic Mean
- C Calculate Student Grade
- C Print Table of Number
- C Print Prime Numbers
- C Add n Numbers
- C Interchange Numbers
- C Reverse a Number
- C Swap Two Numbers
- C Count Positive Negative Zero
- C Find Largest of Two Numbers
- C Find Largest of Three Numbers
- C Find Factorial of Number
- C Find LCM & HCF
- C Find LCM of n Numbers
- C Find HCF of n Numbers
- C Area & Perimeter of Square
- C Area & Perimeter of Rectangle
- C Area & Circumference of Circle
- C Convert Fahrenheit to Celsius
- C Convert Celsius to Fahrenheit
- C Print ASCII Value
- C Print Fibonacci Series
- C Check Palindrome or Not
- C Check Armstrong or Not
- C Generate Armstrong Numbers
- C Find nCr and nPr
- C Convert Decimal to Binary
- C Convert Decimal to Octal
- C Convert Decimal to Hexadecimal
- C Convert Binary to Decimal
- C Convert Binary to Octal
- C Convert Binary to Hexadecimal
- C Convert Octal to Decimal
- C Convert Octal to Binary
- C Convert Octal to Hexadecimal
- C Convert Hexadecimal to Decimal
- C Convert Hexadecimal to Binary
- C Convert Hexadecimal to Octal
- C Pattern Printing Programs
- C Print Diamond Pattern
- C Print Floyd's Triangle
- C Print Pascal's Triangle
- C Print Smiling face
- C 1D Array Programs
- C Linear Search
- C Binary Search
- C Add Two Numbers using Pointer
- C Find Largest Element in Array
- C Find Smallest Element in Array
- C Reverse an Array
- C Insert Element in Array
- C Delete Element from Array
- C Merge Two Arrays
- C Bubble Sort
- C Selection Sort
- C Insertion Sort
- C 2D Array Programs
- C Add Two Matrices
- C Subtract Two Matrices
- C Transpose a Matrix
- C Multiply Two Matrices
- C 3D Array Programs
- C Print String
- C Find Length of String
- C Compare Two String
- C Copy a String
- C Concatenate String
- C Reverse a String
- C Delete Vowels from String
- C Delete Word from String
- C Find Frequency of Character
- C Count Word in String
- C Remove Spaces from String
- C Sort a String
- C Uppercase to Lowercase
- C Lowercase to Uppercase
- C Swap Two Strings
- C Check Anagram or Not
- C Generate Random Numbers
- C Read a File
- C Write Content to File
- C Read & Display File
- C Copy a File
- C Merge Two Files
- C List Files in Directory
- C Delete a File
- C Encrypt & Decrypt a File
- C Print Date
- C Get IP Address
- C Shutdown Computer
- C More Programs
- C Check Palindrome String
- C Inches to Centimetres
- C Kilogram to Gram
- C Count Even Odd
- C Count Vowels Consonants
- C Find Profit Loss
- C Sum All Matrix Elements
- C First & Last Digit Sum
- C Largest Element in Matrix
- C Pass Array to Function
- C Address of Variable
- C Array Element at Even
- C Array Element at Odd
- C Print Even Array Elements
- C Print Odd Array Elements
- C Reverse File
- C Print Message with Time
- C Print Number in Words
- C Print Successive Character
- C Sum of their Square
- C Replace Vowel in String
- C Sort Words in Ascending
- C Sort Words in Descending
- C Sort String in Alphabetical
- C Programming Tutorial
- C Tutorial
- C Programming Library
- C Standard Library
- C Programming Test
- C Programming Test
- Give Online Test
- All Test List

In this tutorial, you will learn and get code about printing of Fibonacci series with and without using fuction. But before going through the program, let's first understand about Fibonacci series.

Fibonacci series is a series of numbers, starts from **0** and **1**. Thereafter, the next number will be the
summation of previous two numbers. For example,

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

That is, the first and second number is 0 and 1, thereafter

- third number = first+second
- Therefore, third number = 0+1 (equals 1)
- fourth number = third+second
- Thereafter, fourth number = 1+1 (equals 2)
- fifth number = fourth+third
- Thereafter, fifth number = 2+1 (equals 3)
- and so on

Now let's move on and implement it in a C program.

The question is, **write a program in C to print Fibonacci series upto N term. The value of N must be taken
by user (at run-time).** The answer to this question is:

// Print Fibonacci Series // ----codescracker.com---- #include<stdio.h> #include<conio.h> int main() { int a=0, b=1, c, N, temp, i; printf("Enter the value of N (limit): "); scanf("%d", &N); for(i=1; i<=N; i++) { if(i==1) c = 0; else if(i==2 || i==3) c = 1; else { temp = a; a = b; b = c; c = a+b; } if(i==N) printf("%d", c); else printf("%d, ", c); } getch(); return 0; }

As the program was written under **Code::Blocks** IDE, therefore after successful build and run, you will get
the following output:

Provide the value of N (limit), that is how many term of fibonacci series you wants to print:

- Initialize the first number say
**a**with 0 and the second number say**b**with 1 at beginning of the program - Receive the value of limit say
**N** - Create a for loop to run from
**1**to**N**(the limit provided by user at run-time) - Inside the
**for**loop:- initialize
**0**to third number say**c**if**i**is equal to 1 - initialize
**1**to third number say**c**if**i**is equal to 2 or 3 - otherwise, initialize the summation of first and second number say
**a+b**to the third number say**c**

- initialize
- Before initializing
**a+b**to**c**, make sure to initialize**b**to**a**and**c**to**b**using**temp**variable - Then print the value of third number say
**c**

Here is another program that works same as of previous one. The only difference is that this program uses
a user-defined function **printFibo()** to print the Fibonacci series:

// Fibonacci Series using Function // ----codescracker.com---- #include<stdio.h> #include<conio.h> void printFibo(int); int main() { int N; printf("Enter the value of N (limit): "); scanf("%d", &N); printFibo(N); getch(); return 0; } void printFibo(int n) { int i, a=1, b=1, c, temp; for(i=1; i<=n; i++) { if(i==1) c = 0; else if(i==2 || i==3) c = 1; else { temp = a; a = b; b = c; c = a+b; } if(i==n) printf("%d", c); else printf("%d, ", c); } }

Here is the final snapshot of the first sample run:

Here is the final snapshot of another sample run:

Let's modify the previous program that will also print the Fibonacci series but using the function that returns values. Here we have created a function in such a way that it will return each and every term of Fibonacci series one by one:

// Print Fibonacci Series using Function // ----codescracker.com---- #include<stdio.h> #include<conio.h> int getFibo(int); int main() { int N, i, fib; printf("Enter the value of N (limit): "); scanf("%d", &N); for(i=1; i<=N; i++) { fib = getFibo(i); if(i==N) printf("%d", fib); else printf("%d, ", fib); } getch(); return 0; } int getFibo(int i) { static int a=0, b=1, c; int temp; if(i==1) c = 0; else if(i==2 || i==3) c = 1; else { temp = a; a = b; b = c; c = a+b; } return c; }

Here is the final snapshot of the sample run of above program that was created using function with return value:

If user supplies the limit as **10**, then 10 starting term of Fibonacci series will be printed at output screen
and the function created in above program named **getFibo()** will also run 10 times to return each and every term
of Fibonacci series one by one.

Here I've used **static** type variable for **a**, **b** and **c** to remember its previous value
throughout the program.