C++編寫的16進制轉換成10進制的代碼
C++編寫的16進制轉換成10進制的代碼
//16Radix number to Decimal //Programming by : Erfan Nasoori //Mail : ketn68@yahoo.com //Date of send : 2009/1/9include<iostream.h>
include<string.h>
include<math.h>
include<conio>
void main() { int k=-1,j,i; double sum=0 ; int x[20]; char hexa[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; char s[20]; cout<<"Number in 16 radix : "; cin>>s; for(i=0 ; s[i] ; ++i) if(s[i] >= 'a' && s[i] <= 'z') s[i] -= 32;
for(i=0 ; s[i] ; ++i) for(j=0 ; j<16 ; ++j) if(s[i] == hexa[j]) { x[++k]=j; } int y=strlen(s); for( i=(y-1) ,j=0 ; i>=0 ; --i , ++j) { sum += (pow(16,i)*x[j]); } cout<<"--------------------------------------------------"<<endl; cout<<"Radix 10 = "<<sum;
getch(); }</pre>
本文由用戶 mx3y 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!