十进制与任意进制的转换(C语言)
程序员文章站
2024-03-18 18:33:10
...
#include<stdio.h>
#include<math.h>
char b[1000];
char a[16]= {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
void tranf(int n,int r)
{
int i=0,flag=0;
if(n<0) //判断负数
flag=1;
while(n>0)
{
b[i++]=a[n%r];
n/=r;
}
i--;
if(flag==1)
printf("-");
for(; i>=0; i--)
{
printf("%c",b[i]);
}
printf("\n");
}
int main()
{
int i,n,r;//十进制的整数n,转化成r进制的数;
while(~scanf("%d %d",&n,&r))
{
tranf(n,r);
}
return 0;
}