把四进制的数130213化成六进制的数
来源:百度知道 编辑:UC知道 时间:2024/07/06 20:21:30
6^1=6;6^2=36;6^3=216;6^4=1296;6^5=7776;6^6=46656
则130213/46656=2余36901;
36901/7776=4余5797;
5797/1296=4余613;
613/216=2余181;
181/36=5余1.
则130213化成六进制的数就是244251
11100110111
3453
用二进制中转一下很快的
我的搞错了,,变成8进制了..
130213先转10进位:1*1024+3*256+0*64+2*16+1*4+3*1 = 1831
之后做短除就行了,结果是2251
先化成十进制等于1024 ,再化为六进制的等于4334。
啊门,希望没算错。
晕,化十进制为1831,再化六进制为12251
#include <stdio.h>
#include <stdlib.h>
int atoit(char *str)
{
int ret = 0;
while(str)
{
if(*str >= '0' && *str <= '9')
{
ret *= 4;
ret += *str - '0';
str++;
}
else break;
}
return ret;
}///自己写的atoi 把四进制数化为10进制<