分享自己写的 十六进制转成十进制的函数
论坛里找了半天都没有真正能引用的 纠结半天竟然自己给弄成功了 于是分享一下给以后有需要的人程序代码:
//写一函数,输入一个十六进制数,输出相应的十进制数 #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; }