#include<stdio.h>
void trans(int n,int base)
{
int a[10],i=0,k;
if(base==2)
{
while (n != 0)
{
a[i]= n%2;
n/=2;
i++;
}
k=i;
for(i=k-1;i>=0;i--)
printf("%d",a[i]);
}
if(base==8)
{
while (n != 0)
{
a[i]= n%8;
n/=8;
i++;
}
k=i;
for(i=k-1;i>=0;i--)
printf("%d",a[i]);
}
if(base==16)
{
while (n != 0)
{
a[i]= n%16;
n/=16;
i++;
}
k=i;
for(i=k-1;i>=0;i--)
{
if(a[i]>=0&&a[i]<=9)
printf("%d",a[i]);
}
}
}
int main()
{
int i,k;
while(1)
{
printf("请输入一个数字:");
scanf("%d", &i);
printf("需要进制数(2或者 8 或者16):");
scanf("%d",&k);
printf("转化为%d进制为:",k);
trans(i,k);
printf("\n");
}
return 0;
}
第三章第20题
最新推荐文章于 2023-03-20 00:19:27 发布