8.16写一函数,输入一个十六进制数,输出相应的十进制数。

 

#include<stdio.h>
#define N 50 
void main() {  
    long fun(char*s);
    long m;
    char s[N];
     printf("输入十六进制数:");  scanf("%s",s); 
     m=fun(s); 
     printf("十进制数为:%ld\n",m); 
} 
long fun(char*s) {  
    int i,t; 
    long sum=0;  
    for(i=0;s[i];i++) //注意这种循环用法
    {   
    if(s[i]<='9')
    t=s[i]-'0';   
    else t=s[i]-'a'+10;   
    sum=sum*16+t;
    }
 return sum; 
}

结果:

posted @ 2017-07-29 20:09  Allen101  阅读(1020)  评论(0)    收藏  举报