① 用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);
}