Write a Program to Check Whether a Number is Prime or Not

#include <stdio.h>
int main()
{
    int n, i, flag = 0;
    printf("Enter a positive integer: ");
    scanf("%d",&n);
    for(i=2; i<=n/2; ++i)
    {
        // condition for nonprime number
        if(n%i==0)
        {
            flag=1;
            break;
        }

    }
    if (flag==0)
        printf("%d is a prime number.",n);
    else
        printf("%d is not a prime number.",n);
    return 0;
}

Output

>Enter a positive integer: 5
5 is a prime number.

Explanation

	
  • If the for loop terminates when the test expression of loop i <= n/2 is false, the entered number is a prime number. The value of flag is equal to 0 in this case.
  • If the loop terminates because of break statement inside the if statement, the entered number is a nonprime number. The value of flag is 1 in this case.