C program to find ones complement of a binary number

Write a C program to input binary number from user and find ones complement of binary number using loop. How to find 1s complement of a binary number in C programming. Logic to find ones complement of binary number in C programming.

Example

Input

`Input binary number: 01000011`

Output

`Ones complement: 10111100`

Required knowledge

What is Ones complement?

Ones complement of a binary number is defined as value obtained by inverting all binary bits. It is the result of swapping all 1s to 0s and all 0s to 1s.

Logic to find ones complement of a number

Step by step logic to find ones complement of binary number.

1. Input a binary string from user. Store it in a variable say binary.
2. Run a loop from 1 to length of binary string, increment 1 in each iteration. The loop structure should look like `for(i=0; i<SIZE; i++)` (where SIZE is the length of binary digit).
3. Inside loop there are two possibilities -
• Print 0 for each 1 binary bit i.e. `if(binary[i] == '1')`.
• Print 1 for each 0 binary bit i.e. `if(binary[i] == '0')`.

Program to find ones complement of a number

``````/**
* C program to find 1s complement of a binary number
*/

#include <stdio.h>

#define SIZE 8

int main()
{
char binary[SIZE + 1], onesComp[SIZE + 1];
int i, error=0;

printf("Enter %d bit binary value: ", SIZE);

/* Input binary string from user */
gets(binary);

/* Store all inverted bits of binary value to onesComp */
for(i=0; i<SIZE; i++)
{
if(binary[i] == '1')
{
onesComp[i] = '0';
}
else if(binary[i] == '0')
{
onesComp[i] = '1';
}
else
{
printf("Invalid Input");
error = 1;

/* Exits from loop */
break;
}
}

/* Marks the end of onesComp string */
onesComp[SIZE] = '\0';

/* Check if there are binary string contains no error */
if(error == 0)
{
printf("Original binary = %s\n", binary);
printf("Ones complement = %s", onesComp);
}

return 0;
}``````

Output

```Enter any 8 bit binary value: 00001111
Original binary = 00001111
Ones complement = 11110000```

Happy coding 😉

Write your doubts or suggestion. I will try my best to help. You must escape source code before commenting. To format your source code paste your source code inside
<pre><code> ----Your Source Code---- </code></pre>