编写一个程序,要求用户输入一个十进制数,然后分别转换成为二进制数、八进制数和十六进制数输出。

如题所述

第1个回答  2012-03-21
#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;
}
第2个回答  2007-03-14
十进制的跟别的进制的区别就是数位不同吧.十进制组成数值是0-9.八进制是0-7.
相似回答