C Program to Find All Factors of a Number using For Loop

  • Write a C program to print all factors of a number.

Required Knowledge

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

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