发布网友 发布时间:2022-04-24 17:58
共1个回答
热心网友 时间:2023-10-29 05:04
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void main(void)
{
int a,b,c,b0=0,b1=0,d8=0,dx=0,d10=0,d2=0;
scanf("%d",&a);
c=a;
while(c)
{
d8++;
c/=8;
}
c=a;
while(c)
{
dx++;
c/=16;
}
c=a;
while(c)
{
d10++;
c/=10;
}
c=a;
while(c)
{
d2++;
c/=2;
}
printf("%d:%d %x:%d %o:%d ",a,d10,a,dx,a,d8);
b=0;
c=a;
while(c)
{
b=b*2+c%2;
if(c%2)
b1++;
else
b0++;
c/=2;
}
c=b;
a=0;
while(b)
{
a++;
b/=2;
}
while(c)
{
printf("%d",c%2);
c/=2;
}
for(b=0;b<b1+b0-a;b++)
printf("0");
printf(":%d",d2);
printf("\nBinary digitals: 0:%d 1:%d",b0,b1);
}