Starter Tutorials Blog
Tutorials and articles related to programming, computer science, technology and others.
Subscribe to Startertutorials.com's YouTube channel for different tutorial and lecture videos.
Home » Programming » C Programming » Programs » Functions » C program to find the factorial of a given number
Suryateja Pericherla Categories: Functions. No Comments on C program to find the factorial of a given number
Join Our Newsletter - Tips, Contests and Other Updates
Email
Name

In this article we will learn to implement a C program to find the factorial of a given number. A C program is provided below which reads a number and returns the factorial of that number using recursive and non-recursive functions.

 

Program is as follows:

/*
 * C program to find the factorial of a given number using recursive and non-recursive functions
 * Author: P.S.SuryaTeja
*/
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>

int factorial(int n)
{
	int i, fact = 1;
	for(i = n; i > 1; i--)
		fact = fact * i;
	return fact;
}

int rfactorial(int n)
{
	if(n == 0 || n==1)
		return 1;
	else
		return n * rfactorial(n - 1);
}

int main(int argc, char **argv)
{
	int n;
	printf("Enter a positive number: ");
	scanf("%d", &n);
	printf("\n");
	printf("Non-recursive solution: %d! = %d", n, factorial(n));
	printf("\n");
	printf("Recursive solution: %d! = %d", n, rfactorial(n));
    getch();
    return 0;
}

 

Input and output for the above program is as follows:

Enter a positive number: 5

Non-recursive solution: 5! = 120
Recursive solution: 5! = 120

 

How useful was this post?

Click on a star to rate it!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Leave a Reply

Your email address will not be published. Required fields are marked *

Facebook
Twitter
Pinterest
Youtube
Instagram
Blogarama - Blog Directory