Program 1: Factorial program in c using for loop
#include<stdio.h>
int main(){
int i,f=1,num;
printf("Enter a number: ");
scanf("%d",&num);
for(i=1;i<=num;i++)
f=f*i;
printf("Factorial of %d is: %d",num,f);
return 0;
}
Result
Enter a number: 8 Factorial of 8 is: 40320
Program 2: Factorial program in c using pointers
#include<stdio.h>
void findFactorial(int,int *);
int main(){
int i,factorial,num;
printf("Enter a number: ");
scanf("%d",&num);
findFactorial(num,&factorial);
printf("Factorial of %d is: %d",num,*factorial);
return 0;
}
void findFactorial(int num,int *factorial){
int i;
*factorial =1;
for(i=1;i<=num;i++)
*factorial=*factorial*i;
}
Result
Enter a number: 8 Factorial of 8 is: 40320
Program 3: Factorial program in c using function
#include<stdio.h>
int findFactorial(int);
int main(){
int i,factorial,num;
printf("Enter a number: ");
scanf("%d",&num);
factorial = findFactorial(num);
printf("Factorial of %d is: %d",num,factorial);
return 0;
}
int findFactorial(int num){
int i,f=1;
for(i=1;i<=num;i++)
f=f*i;
return f;
}
Result
Enter a number: 8 Factorial of 8 is: 40320
Program 4: Factorial series in c
#include<stdio.h>
int main(){
long f=1;
int i,num,min,max;
printf("Enter the minimum range: ");
scanf("%d",&min);
printf("Enter the maximum range: ");
scanf("%d",&max);
printf("Factorial series in given range: ");
for(num=min;num<=max;num++){
f=1;
for(i=1;i<=num;i++)
f=f*i;
printf("%ld ",f);
}
return 0;
}
Result
Enter the minimum range: 1 Enter the maximum range: 10 Factorial series in given range: 1 2 6 24 120 720 5040 40320 362880
Program 5: Factorial program in c without using recursion
#include<stdio.h>
int main(){
int i=1,f=1,num;
printf("Enter a number: ");
scanf("%d",&num);
while(i<=num){
f=f*i;
i++;
}
printf("Factorial of %d is: %d",num,f);
return 0;
}
Result
Enter a number: 5 Factorial of 5 is: 120