To determine if a given integer is odd or even we should check its least significant bit (LSB). If least significant bit of an integer is 1, it will be an odd number else it would be even. We can use bitwise AND (&) operator for checking if a given integer is odd or even. When bitwise AND is performed on an integer and 1 then result will be 1 if the integer is odd, else the result will be zero. Following program develops a small C function isOdd
that receives an integer as input and return zero or one depending upon the inputted number is even or odd.
C program to check if a given integer is odd or even using bitwise operators.
/* Write a C program to check if a given integer is odd or even using bitwise operators. */ #include <stdio.h> #include <string.h> int isOdd (int n) { if (n & 1) return 1; else return 0; } int main(void) { unsigned int n; printf("Enter a positive integer: "); scanf("%u", &n); if (isOdd(n)) printf("%d is odd", n); else printf("%d is even", n); } OUTPUT ====== Enter a positive integer: 11 11 is odd
Hope you have enjoyed reading C program that checks if a given integer is odd or even using bitwise operators. Please do write us if you have any suggestion/comment or come across any error on this page. Thanks for reading!
Share this page on WhatsApp