您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 16进制转换成10进制C++程序代码
#includeiostream.h#includestring.hdoubletransform(){inti,j,pow=1;intdot=-1;//记录小数点位置doubleDEC=0,fpow;charHEX[100];cout请输入一个十六进制数endl;loop:cinHEX;j=strlen(HEX);for(i=j;i0;){i--;if((HEX[i]='0')&&(HEX[i]='9'))HEX[i]=HEX[i]-'0';elseif((HEX[i]='A')&&(HEX[i]='F'))HEX[i]=HEX[i]-'A'+10;elseif((HEX[i]='a')&&(HEX[i]='f'))HEX[i]=HEX[i]-'a'+10;elseif(HEX[i]=='.')dot=i;//找到小数点else{cout你的输入不合法,请重新输入endl;gotoloop;}}if(dot!=-1)//当dot的值不等于-1表示有小数点此时dot的值是小数点的位置{for(i=dot;i0;)//小数点前部分用你的方法{i--;DEC=DEC+HEX[i]*pow;pow=pow*16;}fpow=1.0/16;for(i=dot;ij-1;)//小数点后部分从16^(-1)开始{i++;DEC+=HEX[i]*fpow;fpow/=16;}cout该十六进制数转化为十进制数为DECendl;return0;}else{for(i=j;i0;){i--;DEC=DEC+HEX[i]*pow;pow=pow*16;}cout该十六进制数转化为十进制数为DECendl;return0;}}intmain(){while(1){transform();}return0;}
本文标题:16进制转换成10进制C++程序代码
链接地址:https://www.777doc.com/doc-5803594 .html