将十六进制数转化为十进制数

/*解决这道题的关键在于知道了一个整数
各位数字之后,怎么将他们组合在一起成
为一个整数。*/
#include <stdio.h>
#include <stdlib.h>

int main()
{
   char ch[10];
   int i,result=0;
   scanf("%s",ch);

   for(i=0;ch[i]!='\0';i++)
   {
       if(ch[i]>='0'&&ch[i]<='9')
          result=result*16+ch[i]-'0';

       if(ch[i]>='A'&&ch[i]<='F')
          result=result*16+ch[i]-'A'+10;

       if(ch[i]>='a'&&ch[i]<='f')
          result=result*16+ch[i]-'A'+10;

    }

    printf("%d",result);

    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_39785575/article/details/79942382