输入整数,之后再输出一个中间带有空格的补码

编写程序, 输入一个整数n(-32768<=n<=32767), 要求以二进制补码形式输出n。(回车↙)

输入:128↙

输出:"00000000 10000000↙"


#include <stdio.h>
void main()
{
    int i, k, a,cnt = 0;
    scanf("%d", &a);
    k = 0x8000;
    for (i = 0; i < 16; i++, k >>= 1){
        cnt ++;
        printf("%d", (a & k) ? (1) : (0));
        if(cnt == 8){
            printf(" ");
        }
    }
    printf("\n");
}


#include<stdio.h>
void main() { int i,k,a;
scanf("%d",&a); k=0x8000;
for ( i=0;i<16;i++,k>>=1 ) printf("%d",( a&k )?(1):(0));
printf("\n");
}