# C Program to Convert a Decimal Number to Binary & Count the Number of 1s

«
»

This is a C Program to convert a decimal number to binary & count the number of 1s.

Problem Description

This C Program converts a decimal number into binary & count the number of 1s.

Problem Solution

The program uses module operation and multiplication with base 2 operation for conversion. It also uses modulo operation to check for 1’s and accordingly increments the count of 1s.

Program/Source Code

Here is source code of the C program to convert a decimal number to binary & count the number of 1s. The C program is successfully compiled and run on a Linux system. The program output is also shown below.

```/*
* C program to accept a decimal number and convert it to binary
* and count the number of 1's in the binary number
*/
#include <stdio.h>

void main()
{
long num, decimal_num, remainder, base = 1, binary = 0, no_of_1s = 0;

printf("Enter a decimal integer \n");
scanf("%ld", &num);
decimal_num = num;
while (num > 0)
{
remainder = num % 2;
/*  To count no.of 1s */
if (remainder == 1)
{
no_of_1s++;
}
binary = binary + remainder * base;
num = num / 2;
base = base * 10;
}
printf("Input number is = %d\n", decimal_num);
printf("Its binary equivalent is = %ld\n", binary);
printf("No.of 1's in the binary number is = %d\n", no_of_1s);
}```
Program Explanation

In this C program, we are reading the decimal number using ‘num’ variable. A decimal number system is a base 10 number system using digits for 0 to 9 whereas binary number system is base 2 and uses 0 and 1. Check whether the number is less than or equal to zero. Divide the number by 2 and store the remainder in the array. Increase the length of the array by 1. After the execution of while loop, print the binary number and the number of 1’s.

Runtime Test Cases
```
\$ cc pgm46.c
\$ a.out
Enter a decimal integer
134
Input number is = 134
Its binary equivalent is = 10000110
No.of 1's in the binary number is = 3```

Sanfoundry Global Education & Learning Series – 1000 C Programs.

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