In this C program, we will find all prime numbers between 1 to N. A Prime number is a natural number greater than 1 that is only divisible by either 1 or itself.
All numbers other than prime numbers are known as composite numbers. There are infinitely many prime numbers, here is the list of first few prime numbers
2 3 5 7 11 13 17 19 23 29 31 37....
Required Knowledge
Algorithm to check whether a number is prime number or not
Let, N be a positive number.
Let, N be a positive number.
- For every number i, between 2 to N/2(2<= i <= N/2) check whether i divides N completely(check If i is a factor of N).
 - if (N % i == 0), then N cannot be a Prime number.
 - If none of the number between 2 to N/2 divides N completely then N is a prime number.
 
C program to print all prime numbers between 1 to N using for loop
#include<stdio.h>
 
int main(){
 
    int N, i, j, isPrime, n;
    
    printf("Enter the value of N\n");
    scanf("%d",&N);
 
    printf("Prime numbers between %d to %d\n", 1, N);
    
    for(i = 2; i <= N; i++){
        isPrime = 0;
        /* Check whether i is prime or not */
        for(j = 2; j <= i/2; j++){
             if(i % j == 0){
                 isPrime = 1;
                 break;
             }
        }
         
        if(isPrime==0 && N!= 1)
            printf("%d ",i);
    }
   return 0;
}
Output
Enter the value of N 50 Prime numbers between 1 to 50 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47
Related Topics