1224 - C语言8.28
写一个函数,实现输入一个十六进制整数,输出相应的十进制数的功能。
Input
只有一行,包含一个十六进制正整数。保证输入格式中所有英文字母部分(’a’至’f’)均为小写字母,且换算出的十进制整数在0至1000000范围之内。
Output
输出相应的十进制数。
请注意行尾输出换行。
Examples
Input
ff
Output
255
Solution C
#include<stdio.h> int main() { int a; scanf("%X",&a); printf("%d\n",a); return 0; }
Solution C++
#include <stdio.h> #include <string.h> int main() { int trans(char str[]); char str[20]; gets(str); printf("%d\n", trans(str)); return 0; } int trans(char str[]) { int i, val = 0; for (i = 0;str[i] != '\0';i++) { if ('0' <= str[i] && str[i] <= '9') val = val * 16 + (str[i] - '0'); else val = val * 16 + (str[i] - 'a' + 10); } return val; }