举例115 先换2进制 为1111=2^6+2^5+2^4+2^1+2^0
所以换算为二进制就是1110011 上面是2 的几次方
在换算为16进制的就是 依据8421码,0111 0011 换算就是73=7cheng16^1+3cheng16^0
.....dongde ???
数除以16取余 跟换二进制是一样的 只不过余数为10到15换成了A到F
自己编写 用求余%,用数组就能实现
#include
#include
using namespace std;
char a[10005];
int flen(int x)
{
int i=0;
while (x){x/=16;i++;}
return i;
}
void fhex(int x)
{
int l=flen(x);
while (l--)
{
a[l]=(x%16)>=10?(x%16)-10+'A':(x%16)+'0';
x/=16;
}
}
int main()
{
int n;
cin>>n;
fhex(n);
cout< system("pause");
return 0;
}