用C语言编写一个小程序,请问代码是什么?
编写一个小程序,完成以下功能:程序接受用户输入一个十进制整数,并将这个整数的二进制、八进制、十进制、十六进制形式打印到屏幕上,并统计这个整数的有效位个数(最小占用位数)和...
编写一个小程序,完成以下功能:程序接受用户输入一个十进制整数,并将这个整数的二进制、八进制、十进制、十六进制形式打印到屏幕上,并统计这个整数的有效位个数(最小占用位数)和有效二进制位中0和1的个数,要求界面友好易操作。
展开
1个回答
展开全部
#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);
}
#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);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询