分享自己写的 十六进制转成十进制的函数
论坛里找了半天都没有真正能引用的 纠结半天竟然自己给弄成功了 于是分享一下给以后有需要的人
程序代码://写一函数,输入一个十六进制数,输出相应的十进制数
#include<stdio.h>
#include<string.h>
void main()
{
char n[100];
void turn(char x[]);
printf("输入一个十六进制数:\n");
gets(n);
turn(n);
getch();
}
void turn(char x[])
{
int pow(int ,int );
int t,i=0,s=0,m=0,k=0,p=0;
t=strlen(x);
for(;(x[i])!='\0';i++)
{
if((x[i]>='A')&&(x[i]<='F'))
{
k=x[i]-55; // 十六进制A~F 对应十进制 10~15
}
else k=x[i]-48; //用char读取数字 十进制0 对应 48
p=pow(16,t-i-1);
m=k*p;
s=s+m;
}
printf("转成十进制是:%d\n",s);
}
int pow(int a,int b)
{
int y;
if(b==0) y=1;
else if(b==1) y=a;
else y=a*pow(a,b-1);
return y;
}

