scalbn() Function in C Last Updated : 17 Jul, 2024 Summarize Comments Improve Suggest changes Share Like Article Like Report The scalbn() function in C is part of the standard math library <math.h> and is used to scale a floating-point number by an integral power of the base (2 raised to the exponent). This function is very useful while performing high-precision calculations where scaling by powers of 2 is required.Syntax of scalbn() in Cdouble scalbn(double x, int exp);Parameters of scalbn() in CThe scalbn() function in C takes the following parameters:x: The floating-point number to be scaled.exp: The power of 2 by which we want to scale the number x.Return Value of scalbn() in CThe scalbn() function returns the result of multiplying x by 2 raised to the power of exp i.e. x * 2^exp.Examples of scalbn() Function in CThe below examples demonstrate how we can use the scalbn() function in C language.Input: double x = 1.5int exp = 4Output:The result of scaling 1.50 by 2^4 is: 24.00Example 1The below program demonstrates how to use the scalbn() function in C. C // C Program to demonstrate the scalbn() function #include <math.h> #include <stdio.h> int main() { // initialize number and exponent double x = 1.5; int exp = 4; // call scalbn() function double result = scalbn(x, exp); // Print the result printf( "The result of scaling %.2lf by 2^%d is: %.2lf\n", x, exp, result); return 0; } OutputThe result of scaling 1.50 by 2^4 is: 24.00 Time Complexity: O(1)Auxiliary Space: O(1)Example 2The following program demonstrates how to scale different data types in C using the scalbn() function. C // C program to demonstrate the scalbn() function for // different data types #include <math.h> #include <stdio.h> int main() { double x1 = 1.5; float x2 = 2.5f; long double x3 = 3.5l; int n = 4; // scalbn function for double double result1 = scalbn(x1, n); // scalbnf function for float float result2 = scalbnf(x2, n); // scalbnl function for long double long double result3 = scalbnl(x3, n); // Print the results printf( "The result of scaling %.2lf by 2^%d is: %.2lf\n", x1, n, result1); printf("The result of scaling %.2f by 2^%d is: %.2f\n", x2, n, result2); printf( "The result of scaling %.2Lf by 2^%d is: %.2Lf\n", x3, n, result3); return 0; } OutputThe result of scaling 1.50 by 2^4 is: 24.00 The result of scaling 2.50 by 2^4 is: 40.00 The result of scaling 3.50 by 2^4 is: 56.00 Time Complexity: O(1)Auxiliary Space: O(1)Note: The scalbn() function in C is available in three variants to accommodate different data types: scalbn() for double, scalbnf() for float, scalbnl() for long double. Comment More infoAdvertise with us S striver742 Follow Improve Article Tags : C Programs C Language C-Functions C-Library Similar Reads C Programming Language Tutorial C is a general-purpose mid-level programming language developed by Dennis M. Ritchie at Bell Laboratories in 1972. It was initially used for the development of UNIX operating system, but it later became popular for a wide range of applications. Today, C remains one of the top three most widely used 5 min read C Language Introduction C is a general-purpose procedural programming language initially developed by Dennis Ritchie in 1972 at Bell Laboratories of AT&T Labs. It was mainly created as a system programming language to write the UNIX operating system.Main features of CWhy Learn C?C is considered mother of all programmin 6 min read Dynamic Memory Allocation in C using malloc(), calloc(), free() and realloc() In C, a variable defined in a function is stored in the stack memory. The requirement of this memory is that it needs to know the size of the data to memory at compile time (before the program runs). Also, once defined, we can neither change the size nor completely delete the memory.To resolve this, 9 min read Data Types in C Each variable in C has an associated data type. It specifies the type of data that the variable can store like integer, character, floating, double, etc.Example:C++int number;The above statement declares a variable with name number that can store integer values.C is a statically type language where 5 min read C Arrays An array in C is a fixed-size collection of similar data items stored in contiguous memory locations. It can be used to store the collection of primitive data types such as int, char, float, etc., as well as derived and user-defined data types such as pointers, structures, etc. Creating an Array in 7 min read C Pointers A pointer is a variable that stores the memory address of another variable. Instead of holding a direct value, it holds the address where the value is stored in memory. It is the backbone of low-level memory manipulation in C. Accessing the pointer directly will just give us the address that is stor 9 min read C Programs To learn anything effectively, practicing and solving problems is essential. To help you master C programming, we have compiled over 100 C programming examples across various categories, including basic C programs, Fibonacci series, strings, arrays, base conversions, pattern printing, pointers, and 8 min read Operators in C In C language, operators are symbols that represent some kind of operations to be performed. They are the basic components of the C programming. In this article, we will learn about all the operators in C with examples.What is an Operator in C?A C operator can be defined as the symbol that helps us 11 min read Bitwise Operators in C In C, bitwise operators are used to perform operations directly on the binary representations of numbers. These operators work by manipulating individual bits (0s and 1s) in a number.The following 6 operators are bitwise operators (also known as bit operators as they work at the bit-level). They are 6 min read Basics of File Handling in C File handling in C is the process in which we create, open, read, write, and close operations on a file. C language provides different functions such as fopen(), fwrite(), fread(), fseek(), fprintf(), etc. to perform input, output, and many different C file operations in our program.Need of File Han 13 min read Like