#include <stdio.h>
#include <stdlib.h>
/*
(4)将十六进制数转换成十进制数。
输入十六进制数输出对应的十进制数。
输入“ctrl + z” 结束。
*/
int toDec(char c);
int main(){
char num[30];
while (scanf("%s", num) != EOF){
int number = 0;
for (int i = 0; num[i] != ‘\0‘; ++i){
number *= 16;
number += toDec(num[i]);
}
printf("%d\n",number);
}
system("pause");
return 0;
}
int toDec(char c){
if ((c >= ‘0‘) && (c <= ‘9‘))
return c - ‘0‘;
else if ((c >= ‘a‘) && (c <= ‘f‘))
return c - ‘a‘ + 10;
else if ((c >= ‘A‘) && (c <= ‘F‘))
return c - ‘A‘ + 10;
else
return 0;
}
原文:http://www.cnblogs.com/mutaohengheng/p/5104691.html