Program to Check if a Number is Prime in C

Checking Prime Number

A prime number is a natural number greater than 1 that has no divisors other than 1 and itself.

We will explore different methods to check if a number is prime using C programming.

Method 1: Using a for Loop

We iterate from 2 to the square root of the number and check for divisibility.

#include <stdio.h>

int main() {
    int num, i, isPrime = 1;
    printf("Enter a number: ");
    scanf("%d", &num);
    
    if (num < 2) {
        isPrime = 0;
    } else {
        for (i = 2; i * i <= num; i++) {
            if (num % i == 0) {
                isPrime = 0;
                break;
            }
        }
    }
    
    if (isPrime)
        printf("%d is a prime number", num);
    else
        printf("%d is not a prime number", num);
    
    return 0;
}
            

Output:

Enter a number: 7
7 is a prime number

Method 2: Using a Function

We create a function to check for primality and return the result.

#include <stdio.h>

int isPrime(int num) {
    if (num < 2) return 0;
    for (int i = 2; i * i <= num; i++) {
        if (num % i == 0)
            return 0;
    }
    return 1;
}

int main() {
    int num;
    printf("Enter a number: ");
    scanf("%d", &num);
    
    if (isPrime(num))
        printf("%d is a prime number", num);
    else
        printf("%d is not a prime number", num);
    
    return 0;
}
            

Output:

Enter a number: 10
10 is not a prime number
Easy aceess next quctions
Getting Started

Positive or Negative number: C C++ Java Python

Even or Odd number: C C++ Java Python

Sum of First N Natural numbers: C C++ Java Python

Sum of N natural numbers: C C++ Java Python

Sum of numbers in a given range: C C++ Java Python

Greatest of two numbers: C C++ Java Python

Greatest of the Three numbers: C C++ Java Python

Leap year or not: C C++ Java Python

Prime number: C C++ Java Python

Prime number within a given range: C C++ Java Python

Sum of digits of a number: C C++ Java Python

Reverse of a number: C C++ Java Python

Palindrome number: C C++ Java Python

Armstrong number: C C++ Java Python

Armstrong number in a given range: C C++ Java Python

Harshad number: C C++ Java Python

Abundant number: C C++ Java Python

Friendly pair: C C++ Java Python