10进制数转化成2进制数程序

来源:百度知道 编辑:UC知道 时间:2024/06/22 07:47:48

String s = Integer.toBinaryString(222);//十进制数做为参数
System.out.println(s);

#include<stdio.h>
#define SIZE 20
void main()
{
void zhuanhua(float n,int x);
void xiaoshu(float x);

float n;
int x;

printf("请输入任意的一个十进制数: ");
scanf("%f",&n);

x=(int)n;

if(x!=n)//输入为小数时
{
printf("转换成二进制为: ");
zhuanhua(n,x);//输出整数部分
printf(".");
xiaoshu(n-x);//输出小数部分
}
else //输入为整数时
{
printf("转换成二进制为: ");
zhuanhua(n,x);
}
printf("\n");
}
//以下是自定义函数
void zhuanhua(float n,int x)
{
int i=0;
int a[SIZE];

if(n<0){x=-x;printf("-");}//变负数为正数同时加上负号(解决负数情况)

do
{
a[i++]=x%2;//除2取余
x=x/2;//取得本循环的商数作为下一循环被除数
}while(x!=0);

for(i=i-1;i>=0;i--)printf("%d",a[i]);//输出<