本文共 493 字,大约阅读时间需要 1 分钟。
从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。FFFF
65535
#include#include long long pow(int n,int i){ long long sum=1; for(;i>0;i--) sum*=n; return sum;}int main(){ int i,j,k,len; long long sum=0; char number[17]="0123456789ABCDEF"; char sixteen[9]; gets(sixteen); len=strlen(sixteen); for(i=len-1,k=0;i>=0;i--,k++){ for(j=0;j<17;j++) if(number[j]==sixteen[i]) break; sum=sum+j*pow(16,k); } printf("%lld",sum);}
转载地址:http://jifz.baihongyu.com/