十进制转二进制,整数部分采用除以二取余,小数部分采用乘以二取整。网上大多数转换都是针对整数的,这里写一个小数的做个纪念
#include <stdio.h>
#include <stdlib.h>
int main()
{
double a=0.2784;
int i=0;
printf("0.");
for(i=0; i<18; i++)
{
if(a*2>1)
{
a=a*2-1;
printf("1");
}
else
{
a=a*2;
printf("0");
}
}
printf("\n");
return 0;
}