制转
十二进制到十进制的转换可按下面的例子进行:
(1000)12=1*12^3(12的3次方)+0*12^2(12的2次方)+0*12^1(12的1次方)+0*12^0(12的0次方)=(1728)10 (5B54012)12=5*12^6+11*12^5+5*12^4+4*12^3+0*12^2+1*12^1+2*12^0=1777678
逆制转
十进制到十二进制的转换可按下面的例子进行:
123456 ÷ 12 = 10288 ... 0 10288 ÷ 12 = 857 ... 4 857 ÷ 12 = 71 ... 5 71 ÷ 12 = 5 ... 11 (B) 5 ÷ 12 = 0 ... 5
将最右排的数从下往上依次写下,即得到123456 = (5B540)12。
int a[10],i=0;
while(n!=0)
{
a[i]=n%12;
n/=12;
i++;
}
a[]中存放了12进制的各位数字
对12求余,结果写在个位,商记下来
再把商对12求余,结果写在十位,商的商记下来
....