当前位置:首页 » 编程语言 » c语言十进制转二进制
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言十进制转二进制

发布时间: 2022-01-18 09:40:34

① 用c语言把十进制数转化为二进制的数组

#include
<stdio.h>
void
toBinary(unsigned
int
a,unsigned
int*
b,int
length){
int
i;
for(i=length-1;i>=0;i--){
b[i]=a%2;
a/=2;
}
}
int
main(){
unsigned
int
a;
printf("Enter
the
number:
");
scanf("%d",&a);
double
l=log((double)a)/log((double)2);
int
length=(int)l+1;
unsigned
int*
b=(unsigned
int*)calloc(length,sizeof
unsigned
int);
toBinary(a,b,length);
int
i;
for(i=0;i<length;i++)
printf("%d
",b[i]);
printf("\n");
free((void)b);
return
0;
}

② c语言怎么将十进制转化成二进制

#include <stdio.h>

void main()

{

//进制转换函数的声明

int transfer(int x);

int x;

printf("请输入一个十进制数:");

scanf("%d",&x);

printf("转换成二进制数是:%d ",transfer(x));

}

int transfer(int x)

{

int p=1,y=0,yushu;

while(1)

{

yushu=x%2;

x/=2;

y+=yushu*p;

p*=10;

if(x<2)

{

y+=x*p;

break;

}

}

return y;

}

89÷2 ……1

44÷2 ……0

22÷2 ……0

11÷2 ……1

5÷2 ……1

2÷2 ……0

1

十进制小数转二进制数:“乘以2取整,顺序排列”(乘2取整法)

网络-二进制

③ C语言中怎样调用函数将十进制转换成二进制

1、打开visualC++6.0-文件-新建-文件-C++SourceFile。

④ C语言十进制转二进制

十进制转二进制可以使用库函数itoa。

itoa函数原型:char*itoa(int value,char*string,int radix);

功能:将任意类型的数字转换为字符串。在<stdlib.h>中与之有相反功能的函数是atoi。

nt value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等。


(4)c语言十进制转二进制扩展阅读:

方法

#include<stdio.h>

intmain(void)

{ inti=0,n,a[32];

printf("请输入一个十进制整数. ");

scanf("%d",&n);

while(n>0)

{a[i]=n%2;

i=i+1;

n=n/2; }

printf("十进制整数转换为二进制数是: ");

for(i--;i>=0;i--)

printf("%d",a[i]);

printf(" ");

return0;}

十进制整数转换为二进制整数的方法:

十进制整数转换为二进制整数采用"除2取余,逆序排列"法。

具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

⑤ 怎么用C语言编程把十进制转化成二进制

c语言中没有二进制的格式输出符号.
你可以用itoa函数很方便的将一个10进制int转变成二进制字符串.
如:
int
i;
char
s[128];
scanf("%d",&i);
itoa(i,
s,
2);
/*3个参数,第一个是待转换的数,第二个是存放转换后的字符串,第三个即需要转换的进制*/
printf("该数转换为二进制是:
[%s]\n",s);
补充一点,itoa函数的头文件是stdlib.h

⑥ C语言如何写十进制转二进制的程序

#include <stdio.h>
void trans(int x)
{
int a[30];
int i=0,rem;
do{
rem=x%2;x=x/2;
a[i]=rem;
i++;
}while(x!=0);
while(i>0)
printf("%d",a[--i]);
printf("\n");
}
void main()
{
int d;
printf("请输入一个十进制的正整数:\n");
do scanf("%d",&d);while(d<0);
trans(d);
}