You are here

Even or odd program in C

C program to check odd or even: We will determine whether a number is odd or even by using different methods all are provided with a C language program. As you have studied in Mathematics that in decimal number system even numbers are divisible by 2 while odd numbers are not so we can use modulus operator(%) which returns remainder, For example, 4%3 gives 1 (remainder when four is divided by three). Even numbers are of the form 2*p and odd numbers are of the form (2*p+1) where p is is an integer.

Odd or even program in C using modulus operator

#include <stdio.h>
 
int main()
{
   int n;
 
   printf("Enter an integer\n");
   scanf("%d", &n);
 
   if (n%2 == 0)
      printf("Even\n");
   else
      printf("Odd\n");
 
   return 0;
}

We can use bitwise AND (&) operator to check odd or even, as an example consider binary of 7 (0111) when we perform 7 & 1 the result will be one and you may observe that the least significant bit of every odd number is 1, so (odd_number & 1) will be one always and also (even_number & 1) is always zero.

C program to find odd or even using bitwise operator

#include <stdio.h>
 
int main()
{
   int n;
 
   printf("Input an integer\n");
   scanf("%d", &n);
 
   if (n & 1 == 1)
      printf("Odd\n");
   else
      printf("Even\n");
 
   return 0;
}

C program to check even or odd using conditional operator

#include <stdio.h>
 
int main()
{
   int n;
 
   printf("Input an integer\n");
   scanf("%d", &n);
 
   n%2 == 0 ? printf("Even\n") : printf("Odd\n");
 
   return 0;
}

C program to check odd or even without using bitwise or modulus operator

#include <stdio.h>
 
int main()
{
   int n;
 
   printf("Enter an integer\n");
   scanf("%d", &n);
 
   if ((n/2)*2 == n)
      printf("Even\n");
   else
      printf("Odd\n");
 
   return 0;
}

In C programming language when we divide two integers we get an integer result, for example, 7/3 = 2. So we can use it to find whether the number is odd or even. Consider an integer 'n' we can first divide it by 2 and then multiply it by 2, if the result is same as the original number then the number is even otherwise it is odd. For example, 11/2 = 5, 5*2 = 10 (which is not equal to eleven), now consider 12/2 = 6 and 6*2 = 12 (same as original number). These are some logics which you may use to determine if a number is odd or even.