hello guys~

I'm asked to make a program that will add two 32 bit binary numbers. I don't have any idea on what to do so please give me some tips and ideas.

This is what I've done so far and I still can't get the correct answer when I add two binary numbers. Please tell me what to do.

Code:# include<stdio.h> #include <string.h> char x[32]; char y[32]; char z[32]; int a; int carry=0; main() { printf("Please input the first binary number.\n"); scanf("%s", x); printf("Please input the second binary number.\n"); scanf("%s", y); for(a=0;a<=31;a++){ if (x[a]=='0' && y[a]=='0' && carry==0){ z[a]='0'; carry=0;} if (x[a]=='1' && y[a]=='0' && carry==0){ z[a]='1'; carry=0;} if (x[a]=='0' && y[a]=='1' && carry==0){ z[a]='1'; carry=0;} if (x[a]=='1' && y[a]=='1' && carry==0){ z[a]='0'; carry=1;} if (x[a]=='1' && y[a]=='1' && carry==1){ z[a]='1'; carry=1;} if (x[a]=='0' && y[a]=='0' && carry==1){ z[a]='1'; carry=0;} if (x[a]=='0' && y[a]=='1' && carry==1){ z[a]='0'; carry=1;} if (x[a]=='1' && y[a]=='0' && carry==1){ z[a]='0'; carry=1;} } printf("\nThe answer is "); for(a=31;a>=0;a--) printf("%c", z[a]); }