让用户输入一个十进制数,将其转换为二进制,写一个c程序

2025-12-05 06:20:03
推荐回答(1个)
回答1:

#include 

const int MAXSIZE = 33;

char *toBinary(int num,char bin[]) {
int i;
for(i = 0; i < 32; ++i)
bin[i] = num & (1 << (31 - i)) ? '1' : '0';
bin[i] = '\0';
return bin;
}

int main () {
char bin[MAXSIZE];
int num;
printf("请输入整数:");
while(scanf("%d",&num) == 1) {
printf("%10d : %s\n",num,toBinary(num,bin));
printf("请输入整数(q to quit):");
}
return 0;
}