c语言10进制转2进制代码(c语言-10进制转2进制)
#include<stdio.h>#define N 10,下面我们就来聊聊关于c语言10进制转2进制代码?接下来我们就一起去了解一下吧!
c语言10进制转2进制代码
#include<stdio.h>
#define N 10
#define M 100
void fun10_2_Z(long number)//十进制整数部分转二进制
{
char ch[M];
int len=0;
if(number==0)
{
printf("%d",number);//如果整数部分为零直接输出
}
else
{
while(number)
{
ch[len ]=number%2;//余数放入数组存储
number=number/2;//得出的整数递归除2
}
for( ;len>0;len--)//逆向输出
{
printf("%d",ch[len-1]);
}
}
}
void fun10_2_X(double number) //十进制小数部分转二进制
{
int i,len=0;
int arry[N];
while(number)
{
int temp = (int)(number*2);
arry[len ]=temp;
if(len==N)
break; //控制小数点后不超过十位
number = 2*number-temp;
}
printf(".");
for(i=0;i<len;i )
{
printf("%d",arry[i]);
}
}
int main()
{
double number;
scanf("%lf",&number);
long t=(int)number;//整数部分
double m=number-t;//小数部分
fun10_2_Z(t);
fun10_2_X(m);
return 0;
}
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com