chen-kaige
问题描述:
  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
样例输入
FFFF
样例输出
65535
解析:根据c++代码改编。
 #include<stdio.h>
 #include<string.h>
 int main()
 {
     char a[8];
     long long sum=0;
     int i;
     int len=0;
     while(gets(a)){
         len=strlen(a);
         for(i=0;i<len;i++){
             if(a[i]>=\'A\'&&a[i]<=\'F\'){
                 sum=sum*16+a[i]-\'A\'+10;
             }
             else
             {
                 sum=sum*16+a[i]-\'0\';
             }
         }
         printf("%lld",sum);
     }
     return 0;
     
 }

 

分类:

技术点:

相关文章: