intならbinary[10]じゃ全然足りなくね?

#include <stdio.h>

int main(void)
{
int binary[32] = {0};
int a,b,t,i;

printf("a:"); scanf("%d",&a);
printf("b:"); scanf("%d",&b);

t = a + b;
i=0;
while(t){
binary[i++] = t % 2;
t = t / 2;
}

while(i--) printf("%d", binary[i]);

printf("\n");
return 0;
}