Комплемент 2с у Ц се генерише из комплемента 1с у Ц. Као што знамо да се комплемент 1с бинарног броја креира трансформацијом бита 1 у 0 и 0 у 1; 2с комплемент бинарног броја се генерише додавањем један комплементу 1с бинарног броја.
Укратко, можемо рећи да је комплемент 2с у Ц дефинисан као збир комплемента један у Ц и један.
На горњој слици, бинарни број је једнак 00010100, а његов комплемент се израчунава трансформацијом бита 1 у 0 и 0 у 1 обрнуто. Према томе, један комплемент постаје 11101011. Након израчунавања комплемента, израчунавамо комплемент за два тако што додамо 1 комплементу јединице, а његов резултат је 11101100.
Хајде да направимо програм комплемента од 2с.
#include int main() { int n; // variable declaration printf('Enter the number of bits do you want to enter :'); scanf('%d',&n); char binary[n+1]; // binary array declaration; char onescomplement[n+1]; // onescomplement array declaration char twoscomplement[n+1]; // twoscomplement array declaration int carry=1; // variable initialization printf(' Enter the binary number : '); scanf('%s', binary); printf('%s', binary); printf(' The ones complement of the binary number is :'); // Finding onescomplement in C for(int i=0;i<n;i++) { if(binary[i]="='0')" onescomplement[i]="1" ; else } onescomplement[n]="