# C Program For Decimal to Hexadecimal Conversion

Here we will build a C Program For Decimal to Hexadecimal Conversion using 4 different approaches i.e.

1. Using format specifier
2. Using modulus division operator
3. Without using the modulus division operator
4. Using Functions

We will keep the same input in all the mentioned approaches and get an output accordingly.

Input:

`decimal number = 45`

Output:

`hexadecimal number = 2D`

## C

 `// C Program to demonstrate Decimal to Hexadecimal ` `// Conversion using the format specifier ` `#include ` ` `  `int` `main() ` `{ ` `    ``int` `decimalNumber = 45; ` `   `  `    ``// printing hexadecimal number ` `    ``// using format specifier %X ` `    ``printf``(``"Hexadecimal number is: %X"``, decimalNumber); ` `    ``return` `0; ` `}`

Output

`Hexadecimal number is: 2D`

## C

 `// C Program to demonstrate Decimal to Hexadecimal ` `// Conversion using the modulus division operator ` `#include ` ` `  `int` `main() ` `{ ` ` `  `    ``int` `decimal_Number = 45; ` `    ``int` `i = 1, j, temp; ` `    ``char` `hexa_Number[100]; ` `   `  `    ``// if decimal number is not  ` `    ``// equal to zero then enter in ` `    ``// to the loop and execute  ` `    ``// the statements ` `    ``while` `(decimal_Number != 0) { ` `        ``temp = decimal_Number % 16; ` `       `  `        ``// converting decimal number  ` `        ``// in to a hexa decimal ` `        ``// number ` `        ``if` `(temp < 10) ` `            ``temp = temp + 48; ` `        ``else` `            ``temp = temp + 55; ` `        ``hexa_Number[i++] = temp; ` `        ``decimal_Number = decimal_Number / 16; ` `    ``} ` `    ``// printing the hexa decimal number ` `    ``printf``(``"Hexadecimal value is: "``); ` `    ``for` `(j = i - 1; j > 0; j--) ` `        ``printf``(``"%c"``, hexa_Number[j]); ` ` `  `    ``return` `0; ` `}`

Output

`Hexadecimal value is: 2D`

## C

 `// C Program to demonstrate Decimal to Hexadecimal ` `// Conversion without using the modulus  ` `// division operator ` ` `  `#include ` ` `  `int` `main() ` `{ ` ` `  `    ``int` `decimal_Number = 45; ` `    ``int` `i = 1, j, temp; ` `    ``char` `hexa_Number[100]; ` `   `  `    ``// if decimal number is not  ` `    ``// equal to zero then enter in ` `    ``// to the loop and execute  ` `    ``// the statements ` `    ``while` `(decimal_Number != 0) { ` `        ``int` `ch = decimal_Number / 16; ` `        ``int` `r = ch * 16; ` `        ``temp = decimal_Number - r; ` `       `  `        ``// converting decimal number ` `        ``// in to a hexa decimal number ` `        ``if` `(temp < 10) ` `            ``temp = temp + 48; ` `        ``else` `            ``temp = temp + 55; ` `        ``hexa_Number[i++] = temp; ` `        ``decimal_Number = decimal_Number / 16; ` `    ``} ` `   `  `    ``// printing the hexa decimal number ` `    ``printf``(``"Hexadecimal value is: "``); ` `    ``for` `(j = i - 1; j > 0; j--) ` `        ``printf``(``"%c"``, hexa_Number[j]); ` ` `  `    ``return` `0; ` `}`

Output

`Hexadecimal value is: 2D`

## C

 `// C Program to demonstrate Decimal to Hexadecimal ` `// Conversion using the functions ` ` `  `#include ` ` `  `int` `dec_to_hexa_conversion(``int` `decimal_Number) ` `{ ` `    ``int` `i = 1, j, temp; ` `    ``char` `hexa_Number[100]; ` `   `  `    ``// if decimal number is not  ` `    ``// equal to zero then enter in ` `    ``// to the loop and execute the ` `    ``// statements ` `    ``while` `(decimal_Number != 0) { ` `        ``temp = decimal_Number % 16; ` `       `  `        ``// converting decimal number  ` `        ``// in to a hexa decimal ` `        ``// number ` `        ``if` `(temp < 10) ` `            ``temp = temp + 48; ` `        ``else` `            ``temp = temp + 55; ` `        ``hexa_Number[i++] = temp; ` `        ``decimal_Number = decimal_Number / 16; ` `    ``} ` `    ``// printing the hexa decimal number ` `    ``printf``(``"Hexadecimal value is: "``); ` `    ``for` `(j = i - 1; j > 0; j--) ` `        ``printf``(``"%c"``, hexa_Number[j]); ` `} ` ` `  `int` `main() ` `{ ` ` `  `    ``int` `Number = 45; ` `   `  `    ``// Calling the function ` `    ``dec_to_hexa_conversion(Number); ` `    ``return` `0; ` `}`

Output

`Hexadecimal value is: 2D`

Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Previous
Next