This is a C Program to round floor of integer to next lower power of 2.

This C Program round floor of integer to next lower power of 2

Take input from the user and performs powers operations as shown in the program below.

Here is source code of the C Program to round floor of integer to next lower power of 2. The C program is successfully compiled and run on a Linux system. The program output is also shown below.

/* * C Program to round floor of integer to next lower power of 2 */ #include <stdio.h> int main () { int num = 0; printf("\nEnter the number: "); scanf ("%d", &num); num --; num = num | (num >> 1); num = num | (num >> 2); num = num | (num >> 4); num = num | (num >> 8); num = num | (num >> 16); num ++; printf ("\n NEXT NUMBER LOWER TO THE POWER OF 2 : %d\n", num); return 0; }

1. In this C Program, We are reading a number using ‘num’ variable.

2. Take the input number from the user that number will store in num variable. First subtract the 1 from the num.

3. Next we need to perform all the bits in the num set.

For Example:

num = num | (num >> 1); // num = 10000 | 01000 num = num | (num >> 2); // num = 11000 | 00110 num = num | (num >> 4); // num = 11110 | 00001 num = num | (num >> 8); // num = 11111 | 00000 num = num | (num >> 16); // num = 11110 | 00000

4. After completing all shifts num will have the value that is floor to the lower power of 2.

Test case 1 – Enter the number which is less than 16.

$ gcc next_pow.c -o next_pow $ ./next_pow Enter the number: 10 NEXT NUMBER LOWER TO THE POWER OF 2 : 16

Test case 2 – Enter the number which is less than 5.

$ gcc next_pow.c -o next_pow $ ./next_pow Enter the number: 4 NEXT NUMBER LOWER TO THE POWER OF 2 : 4

Test case 3 – Enter the number which is less than 10.

$ gcc next_pow.c -o next_pow $ ./next_pow Enter the number: 6 NEXT NUMBER LOWER TO THE POWER OF 2 : 8

**Sanfoundry Global Education & Learning Series – 1000 C Programs.**

Here’s the list of Best Books in C Programming, Data-Structures and Algorithms

**Next Steps:**

- Get Free Certificate of Merit in C Programming
- Participate in C Programming Certification Contest
- Become a Top Ranker in C Programming
- Take C Programming Tests
- Chapterwise Practice Tests: Chapter 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
- Chapterwise Mock Tests: Chapter 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

**Related Posts:**

- Practice BCA MCQs
- Buy C Books
- Apply for C Internship
- Watch Advanced C Programming Videos
- Buy Computer Science Books