Table of Contents
C program to find factorial of a number|in 7 ways
In this tutorial, we will discuss the C program to find factorial of a number|in 7 ways
In this post, we are going to learn how to find the factorial of a number or the given number in C language
What is the factorial of a number (n)?
The factorial of a number (n) is the product of all positive integers from 1 up to n (n is the given number).
It is simply denoted by n!.
Example
if you want to find the factorial of number 5, you can follow this method.
Factorial of 5 will be 5*4*3*2*1=120
So, 5!=120.
Program 1
Find factorial of a number – using stranded method
#include <stdio.h> #include <stdlib.h> int main() { int i,num=5,fact=1; for(i=1; i<=num; i++) { fact=fact*i; } printf("Factorial of %d is: %d",num,fact); getch(); return 0; }
When the above code is executed it produces the following output
Factorial of 5 is: 120
In this program
- Integer variable i, num1,fact are declared and initialized
- the program finds the factorial using for loop
- Then, the program is displayed the factorial of a number using println() function
Program 2
Find factorial of a number – using for loop
#include <stdio.h> #include <stdlib.h> int main() { int i,num,fact=1; printf("Enter the number for find factorial: "); scanf("%d",&num); for(i=1; i<=num; i++) { fact=fact*i; } printf("Factorial of %d is: %d",num,fact); getch(); return 0; }
When the above code is executed it produces the following output
Enter the number for find factorial: 4 Factorial of 4 is: 24
The program allows the user to enter a value and it finds and displays factorial of the given number using for loop in C language
Program 3
Find factorial of a number – using while loop
#include <stdio.h> #include <stdlib.h> int main() { int num,fact=1; printf("Enter the number for find factorial\n"); scanf("%d",&num); int i=1; while(i<=num){ fact=fact*i; i++; } printf("Factorial of %d is : %d",num,fact); getch(); return 0; }
When the above code is executed it produces the following output
Enter the number for find factorial 7 factorial of 7 is:5080
The program allows the user to enter a value and it finds and displays factorial of the given number using while loop in C language
Program 4
Find factorial of a number – using do-while loop
#include <stdio.h> #include <stdlib.h> int main() { int num,fact=1; printf("Enter the number to find factorial\n"); scanf("%d",&num); int i=1; do{ fact=fact*i; i++; } while(i<=num); printf("Factorial of %d is : %d",num,fact); getch(); return 0; }
When the above code is executed it produces the following output
Enter the number to find fatorial 4 Factorial of 4 is : 24
The program allows the user to enter a value and it finds and displays factorial of the given number using the do-while loop in C language
Program 5
Find factorial of a number – using function
#include <stdio.h> #include <stdlib.h> int main() { printf("Enter the number for find factorial\n"); fact(); //function call } int fact(){ //function definition int i,num,fact=1; scanf("%d",&num); i=1; while(i<=num){ fact=fact*i; i++; } printf("Factorial of %d is : %d",num,fact); //Display factorial getch(); return 0; }
When the above code is executed it produces the following output
Enter the number for find factorial 6 factorial of 6 is: 720
The program allows the user to enter a value and it finds and displays factorial of the given number using the function in C language
Program 6
Find factorial of a number – using recursion
#include <stdio.h> #include <stdlib.h> long int findFact(int num); int main() { int num; printf("Enter a positive integer: "); scanf("%d",&num); printf("factorial of %d = %ld",num,findFact(num)); getch(); return 0; } long int findFact(int num){ if (num>=1) return num*findFact(num-1); else return 1; }
When the above code is executed it produces the following output
Enter a positive integer: 8 factorial of 8 = 40320
The program allows the user to enter a value and it finds and displays factorial of the given number using recursion in C language
Program 7
Find factorial of a number – using the pointer
#include <stdio.h> #include <stdlib.h> void Factorial(int, long int*); int main() { long int fact; int num; printf("Enter a integer to find factorial\n"); scanf("%d",&num); Factorial(num,&fact); printf("factorial of %d is %d ",num,fact); getch(); return 0; } void Factorial(int n, long int *fact){ int i; *fact=1; for(i=1; i<=n; i++) *fact=*fact*i; }
When the above code is executed it produces the following output
Enter a integerto find factorial 5 factorial of 5 is 120
The program allows the user to enter a value and it finds and displays factorial of the given number using the pointer in C language
Similar post
C program to find factorial of a number
Java program to find factorial of a number
Python program to find factorial of a number
C++ program to find factorial of a number
Suggested for you
for loop in C language