一 . 16进制转化为10进制
1. 先用gets把输入的16进制串输入到一个字符串中
2. 然后把a---f 和 A---F 改成10----15的数字
3. 取出字符串中的字符 按位和 16 相乘
注意: 要把字符化为整形数字 (字符A-----F 要用str[i] - 'A'化为整形 ;
字符型的a---f:str[i] - 'a';
字符型的0--9 :str[i] - '0';
4.之后就可以相乘了
for (i=len-1; i>=0; i--)
{
if (hex[i]>='a' && hex[i]<='f')
hex[i] = hex[i] - 'a';
else if ( hex[i]>='0' && hex[i]<='9' )
hex[i] = hex[i] - '0';
else if (hex[i]>='A' && hex[i]<='F')
hex[i] = hex[i] - 'A';
temp = hex[i] *16;
for (j=len-1; j > i; j--)
{
temp *= 16;
}
decimal += temp;
}
decimal = decimal /16;
}