# C Program to Convert Decimal to Binary

How to write a C Program to Convert Decimal to Binary Number with a practical example? To convert the Decimal Number to Binary Number in C – First, Divide the Original value by 2. Next, Divide the Quotient by 2. Repeat the same steps until the given number is zero.

## C Program to Convert Decimal to Binary Example

This program to convert decimal to binary uses For Loop to convert the user given Decimal value to Binary value

``` #include <stdio.h>
int main()
{
int a[10], number, i, j;
printf("\n Please Enter the Number You want to Convert  :  ");
scanf("%d", &number);

for(i = 0; number > 0; i++)
{
a[i] = number % 2;
number = number / 2;
}

printf("\n Binary Number of a Given Number =  ");
for(j = i - 1; j >= 0; j--)  {
printf(" %d ", a[j]);
}
printf("\n");
return 0;
}```

Within this program to convert decimal to binary, first, we used For Loop. Here, number = 5

Loop First Iteration: for(i = 0; Number > 0; i++)
for(i = 0; 5 > 0; 0++) – condition true
a[0] = number % 2 => 5 % 2 = 1
number = number / 2 = 2.5

Second Iteration: for(i = 1; 2 > 0; 1++)
a[1] = 2.5 % 2 = 0
number = 2.5 / 2 = 1.25

Third Iteration: for(i = 2; 1 > 0; 2++)
a[2] = 1.25 % 2 = 1
number = 0

Next, we used the C Programming For Loop to Print Array elements.

### Convert Decimal to Binary using While loop

This is another C example of converting the decimal values to binary numbers, and for this, we are using a while loop.

``` #include <stdio.h>

int main()
{
int a[10], number, i = 1, j;
printf("\n Please Enter the Number You want to Convert  :  ");
scanf("%d", &number);

while(number  != 0)
{
a[i++] = number % 2;
number = number / 2;
}

printf("\n Binary Number of a Given Number =  ");
for(j = i - 1; j > 0; j--)  {
printf(" %d ", a[j]);
}
return 0;
}```

C Decimal to Binary output

``````
Please Enter the Number You want to Convert  :  25

Binary Number of a Given Number =   1  1  0  0  1 ``````

### C Program to Convert Decimal to Binary using Functions

In this program, we used Functions and Bitwise AND Operator to convert decimal values to binary.

``` #include <stdio.h>

void Decimal_to_Binary(int number)
{
int j;
for(int i = 31; i >= 0; i--)
{
j = number >> i;

if(j & 1)
printf("1");
else
printf("0");
}
}
int main()
{
int number;

printf("\n Please Enter the Number You want to Convert  :  ");
scanf("%d", &number);

Decimal_to_Binary(number);

return 0;
}```

Decimal to Binary output

``````
Please Enter the Number You want to Convert  :  32
00000000000000000000000000100000``````