#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(){
char c[50],b[]={'a','b','c','d','e','f'},B[]={'A','B','C','D','E','F'},N[]={'0','1','2','3','4','5','6','7','8','9'};
int i,j,k,num,x,n;
while(printf("请输入一个十六进制的数:"),gets(c)!=NULL){
for(i=0;;i++){
if(c[i]=='\0'){
break;
}
}
num=0;
for(j=0;j<i;j++){
n=0;
for(k=0;k<6;k++){
if(c[j]==b[k]){
n=10+k;
}
if(c[j]==B[k]){
n=10+k;
}
}
if(n==0){
for(k=0;k<10;k++){
if(c[j]==N[k]){
n=k;
}
}
}
num+=n*pow(16.0,i-j-1);
}
printf("转换为十进制后的值为:%d\n",num);
}
system("pause");
}
十六进制数转十进制数
最新推荐文章于 2022-05-10 11:48:09 发布