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;}

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功