3397 - 习题7-16 数制转换
时间限制 : 1 秒
内存限制 : 12 MB
写一个函数,将一个十六进制数转换为十进制数。在主函数中输入一个十六进制数(满足十六进制数格式的字符串),通过调用此函数,得到该十六进制数所对应的十进制数,并输出。
题目输入
十六进制数(满足十六进制数格式的字符串)
题目输出
该十六进制数所对应的十进制数,行尾换行。
输入/输出样例
输入格式
1A
输出格式
26
C语言解答
#include<stdio.h> void main() {int i=0; int value=0; char ch[10]; gets(ch); while (ch[i]) { if(ch[i]>='A'&&ch[i]<='F') value=(ch[i]-55)+16*value; else if(ch[i]>='a'&&ch[i]<='f') value=(ch[i]-87)+16*value; else if(ch[i]>='0'&&ch[i]<='9') value=(ch[i]-48)+16*value; else{printf("输入有误\n"); break; } i++;} printf("%d\n",value); }
C++解答
#include<stdio.h> int main() { int n; scanf("%x",&n); printf("%d",n); return 0; }