函数小数转换为二进制:
void Decimal_to_Binary(void)
{
int input =0;
int i;
int count = 0;
int binary [32]; /* 32比特,最大32要素 */
printf ("进入十进制数转为二进制:");
scanf ("%d", &input);
do
{
i = input%2; /* 国防部得到1或20*/
binary[count] = i; /* 负载二进制数组元素 */
input = input/2; /* 隔膜投入2减量经二进制 */
count++; /* 需要多少分子*/
}while (input > 0);
/* 反向输出二进制数字 */
printf ("Binary representation is: ");
do
{
printf ("%d", binary[count - 1]);
count--;
} while (count > 0);
printf ("\n");
}
函数小数转换为二进制:
以下功能是任何二进制数转换为相应的十进制数:
void Binary_to_Decimal(void)
{
char binaryhold[512];
char *binary;
int i=0;
int dec = 0;
int z;
printf ("Please enter the Binary Digits.\n");
printf ("Binary digits are either 0 or 1 Only ");
printf ("Binary Entry : ");
binary = gets(binaryhold);
i=strlen(binary);
for (z=0; z<i; ++z)
{
dec=dec*2+(binary[z]=='1'? 1:0); /* if Binary[z] is
equal to 1,
then 1 else 0 */
}
printf ("\n");
printf ("Decimal value of %s is %d",
binary, dec);
printf ("\n");
}
|