C program to find prime factors of a number; Through this tutorial, we will learn how to find and print prime factors of a number in the c program using for loop, while loop, and recursion.

## Programs to Find Prime Factors of a Number in C

- C Program to Find Prime Factors of a Number Using For Loop
- C Program to Find Prime Factors of a Number Using While Loop
- C Program to Find Prime Factors of a Number Using Recursion

### C Program to Find Prime Factors of a Number Using For Loop

/* C Program to Find Prime Factors of a Number using For Loop */ #include <stdio.h> int main() { int i, j, Number, isPrime; printf("\n Please Enter any number to Find Factors : "); scanf("%d", &Number); for (i = 2; i <= Number; i++) { if(Number % i == 0) { isPrime = 1; for (j = 2; j <= i/2; j++) { if(i % j == 0) { isPrime = 0; break; } } if(isPrime == 1) { printf("\n %d is a Prime Factor ", i); } } } return 0; }

**The output of the above c program; as follows:**

Please Enter any number to Find Factors : 20 2 is a Prime Factor 5 is a Prime Factor

### C Program to Find Prime Factors of a Number Using While Loop

/* C Program to Find Prime factors of a Number using While Loop */ #include <stdio.h> int main() { int Number, i = 1, j, Count; printf("\n Please Enter number to Find Factors : "); scanf("%d", &Number); while (i <= Number) { Count = 0; if(Number % i == 0) { j = 1; while(j <= i) { if(i % j == 0) { Count++; } j++; } if(Count == 2) { printf("\n %d is a Prime Factor ", i); } } i++; } return 0; }

**The output of the above c program; as follows:**

Please Enter number to Find Factors : 50 2 is a Prime Factor 5 is a Prime Factor

### C Program to Find Prime Factors of a Number Using Function

#include <stdio.h> void Find_Prime(int Number) { int i, Count = 0; for (i = 2; i <= Number/2; i++) { if(Number%i == 0) { Count++; } } if(Count == 0 && Number != 1 ) { printf("\n %d is a Prime Number", Number); } } void Find_Factors(int Number) { int i; for (i = 1; i <= Number; i++) { if(Number % i == 0) { // Calling Find_Prime Function for every factor Find_Prime(i); } } } int main() { int i, j, Number, count; printf("\n Please Enter any number to Find it's Prime Factors : "); scanf("%d", &Number); printf("\n Prime Factors of a Given Number are : \n"); Find_Factors(Number); return 0; }

**The output of the above c program; as follows:**

Please Enter any number to Find it's Prime Factors : 100 Prime Factors of a Given Number are : 2 is a Prime Number 5 is a Prime Number