C语言进制转化
方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。
然后将余数从下往上连在一起就是该进制数。
其它进制同理。
#include<stdio.h>
static bs=0;
void change(int num,int jz,char*z)
{
int n;
if(num)
{
change(num/jz,jz,z);
n=num%jz;
if(n<10)
z[bs++]=n+'0';
else
z[bs++]=n+55;
}
}
void main()
{
int num,i=0,jz;
char z[100]="0";
printf("请十进制数据输入数据:");
scanf("%d",&num);
printf("请输入你想转换的进制:");
scanf("%d",&jz);
change(num,jz,z);
puts(z);
}