定义函数void DecToBin(int a, char b[33]); 函数功能是将整数a转换为它对应的32位二进制机器数,将32位二进制机器数以字符串形式存于字符数组b(以'\0'字符结束)。
比如:a=160,则函数调用结束后,b数组存储的串为"00000000000000000000000010100000";
a=-1,则函数调用结束后,b数组存储的串为"11111111111111111111111111111111";
从键盘输入一个整数a,调用该函数,然后输出存储于b数组的表示二进制机器数的字符串。
输入提示信息、输入与输出格式自拟。
#include <stdio.h>
void DecToBin(int a, char b[33]){
int i;
for(i = 0;i<32;++i)b[i]=((a>>(31-i))&0x01)+'0';
b[i] = '\0';
}
int main(){
int a;
char b[33];
printf("请输入一个整数:\n");
scanf("%d",&a);
DecToBin(a,b);
printf("%s\n",b);
return 0;
}