This is a C Program to reverse all the bits of an 32-bit integer using bitwise.
This C Program reverse all the bits of an 32-bit integer using bitwise.
Take input from the user and performs bitwise operations as shown in the program below.
Here is source code of the C Program to reverse all the bits of an 32-bit integer using bitwise. The C program is successfully compiled and run on a Linux system. The program output is also shown below.
/* * C Program to Reverse all the Bits of an 32-bit Integer using * Bitwise */ #include <stdio.h> int main () { int n = 0, num = 0, count = 0, rev_bits = 0; printf ("Enter the number: "); scanf ("%d", &n); while (n > 0) { // keep shifting each bit rev_bits = rev_bits << 1; // if the bit is 1 then we XOR with 1 if (n & 1 == 1) { rev_bits = rev_bits ^ 1; } // right shift n n = n >> 1; } printf ("\nThe reversed resultant = %d\n", rev_bits); return 0; }
1. Take the input from the user and store it in “n” variable.
2. For a given integer n, the basic idea is to loop through each bit of ‘n’ from right end (right-shift) and keep shifting ‘rev_bits’ from left end (left-shift).
rev_bits = rev_bits << 1;
n = n >> 1;
3. In while looping if a set bit is encountered, then set the bit in rev_bits. Perform loop for all bits. At the end ‘rev_bits’ contain the resultant reverse.
Test case 1 – Here, the entered number is 2.
Enter the number: 2 The reversed resultant = 1
Test case 2 – Here, the entered number is 7.
Enter the number: 7 The reversed resultant = 7
Test case 3 – Here, the entered number is 256
Enter the number: 256 The reversed resultant = 1
Sanfoundry Global Education & Learning Series – 1000 C Programs.
Here’s the list of Best Books in C Programming, Data-Structures and Algorithms
- Watch Advanced C Programming Videos
- Practice Computer Science MCQs
- Apply for Computer Science Internship
- Apply for C Internship
- Check Computer Science Books