# C program to convert Decimal to Hexadecimal number system

Write a C program to input decimal number from user and convert to Hexadecimal number system. How to convert Decimal to Hexadecimal number system in C programming. Logic to convert decimal to hexadecimal number system in C programming.

Example

Input

`Input decimal number: 26`

Output

`Hexadecimal number: 1A`

## Required knowledge

### Decimal number system

Decimal number system is a base 10 number system. Decimal number system uses 10 symbols to represent all number i.e. 0123456789

Hexadecimal number system is a base 16 number system. Hexadecimal number system uses 16 symbols to represent all numbers i.e. 0123456789ABCDEF

## Algorithm to convert decimal to hexadecimal number system

```Algorithm Conversion from Decimal to Hexadecimal
begin:
hex ← NULL; rem ← 0;
HEXVALUES[] ← 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F;
While(decimal != 0)
begin:
rem ← decimal % 16;
hex ← hex + HEXVALUES[rem];
decimal ← decimal / 16;
end;
Reverse(hex);
end;```

## Program to convert decimal to hexadecimal number system

``````/**
* C program to convert from Decimal number system to hexadecimal number system
*/

#include <stdio.h>
#include <string.h>

int main()
{
char HEXVALUE[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};

long long decimal, tempDecimal;
char hex[65];
int index, rem;

/* Input decimal number from user */
printf("Enter any decimal number: ");
scanf("%lld", &decimal);
tempDecimal = decimal;

index = 0;

/* Decimal to hexadecimal conversion */
while(tempDecimal !=0)
{
rem = tempDecimal % 16;

hex[index] = HEXVALUE[rem];

tempDecimal /= 16;

index++;
}
hex[index] = '\0';

strrev(hex);

printf("\nDecimal number = %lld\n", decimal);

return 0;
}``````

Output

```Enter any decimal number: 427
Decimal number = 427