编写一个程序,要求用户输入一个十进制数,然后分别转换成为二进制数、八进制数和十六进制数输出。 10
3个回答
展开全部
#include <stdio.h>
int main(void)
{
int i=0,j,n,x;
int a[100]={0};
char b[100]={0};
printf ("将10进制转化成n进制\n");
scanf ("%d",&n);
printf ("请输入10进制数x:\n");
scanf ("%d",&x);
if (n!=16)
{
while (x!=0)
{
a[i]=x%n;
x=x/n;
++i;
}
i--;
for (j=i;j>=0;--j)
{
printf (" %d ",a[j]);
}
}
else
{
while (x!=0)
{
if ((x%n) >=10)
{
b[i]=x%n+65-10;
}
else
{
b[i]=x%n;
}
x=x/n;
++i;
}
i--;
for (j=i;j>=0;--j)
{
if ( b[j] >= 'A')
{
printf (" %c ",b[j]);
}
else
{
printf (" %d ",b[j]);
}
}
}
printf ("\n");
return 0;
}
int main(void)
{
int i=0,j,n,x;
int a[100]={0};
char b[100]={0};
printf ("将10进制转化成n进制\n");
scanf ("%d",&n);
printf ("请输入10进制数x:\n");
scanf ("%d",&x);
if (n!=16)
{
while (x!=0)
{
a[i]=x%n;
x=x/n;
++i;
}
i--;
for (j=i;j>=0;--j)
{
printf (" %d ",a[j]);
}
}
else
{
while (x!=0)
{
if ((x%n) >=10)
{
b[i]=x%n+65-10;
}
else
{
b[i]=x%n;
}
x=x/n;
++i;
}
i--;
for (j=i;j>=0;--j)
{
if ( b[j] >= 'A')
{
printf (" %c ",b[j]);
}
else
{
printf (" %d ",b[j]);
}
}
}
printf ("\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
十进制的跟别的进制的区别就是数位不同吧.十进制组成数值是0-9.八进制是0-7.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询