Home »
C programs »
C bitwise operators programs
C program to find odd or even number using bitmasking
In this article, we are going to see how to check a number odd or even using bitwise operators?
Submitted by Radib Kar, on December 30, 2018
Problem statement
Write a C program to find odd or even no using bitwise operators.
Solution: We can use bitwise operator here to solve the problem.
Example
Let n be a number
n &1 = 0000000d where d is the LSB of n
So,
If LSB ==1
It's odd number
Else
Even no
To understand the concept of "LSB" & bitwise operators please read: Bitwise Operators and their working with Examples in C
Example:
Let n be 7 //00000111
n & 1 = 1
00000111(7) & 00000001(1) =00000001 (1)
Thus it's an odd number
Let n be 6 //00000110
N&1=0
00000110(6) & 00000001(1) =00000000 (0)
Thus it's an even number
C program to find odd or even number using bitmasking
#include <stdio.h>
int main() {
int n;
printf("enter no: ");
scanf("%d", & n);
//n&1 actually results in 0000000d where d is your LSB
if (n & 1 == 1)
printf("it's odd no"); //for odd no LSB 1
else
printf("it's even no"); //for even no LSB 0
return 0;
}
Output
First run:
enter no: 7
it's odd no
Second run:
enter no: 6
it's even no
C Bitwise Operators Programs »