- Write a C program to print all factors of a number.
Required Knowledge
- C printf and scanf functions
- For loop in C
A number N is a factor of number M, if and only if N divides M completely leaving no remainder(M % N = 0). For example, 4 is a factor of 40 because 4 divides 40 without leaving any remainder.
40 / 4 = 10. and 40 % 4 = 0;
Here is the list of all factors of 40 : 1 2 4 5 8 10 20 40
Algorithm to find all factors of a number N
Check with every number from 1 to N, whether it divides N completely or not.
Let, i be any number between 1 to N
- If(N % i == 0), then i is a factor of N
- If(N % i != 0), then i is not a factor of N
C program to find all factors of a number using for loop

#include <stdio.h>
int main() {
int counter, N;
/*
* Take a number as input from user
*/
printf("Enter a Number\n");
scanf("%d", &N);
printf("Factors of %d\n", N);
/*Check for every number between 1 to N,
whether it divides N */
for(counter = 1; counter <= N; counter++) {
if(N%counter == 0) {
printf("%d ", counter);
}
}
return 0;
}
Output
Enter a Number 40 Factors of 40 1 2 4 5 8 10 20 40
Enter a Number 37 Factors of 37 1 37