zoukankan      html  css  js  c++  java
  • 十六进制转十进制 2.0

    #include<stdio.h>
    #include<string.h>
    int  change(char str1[100]);//对于change函数的声明 
    int main(){ 
        int sum=0; //初始化十进制的数为0 
        char str1[100]; //定义字符串数组用来存储十六进制数 
        scanf("%s",str1);//输入十六进制的数 
        sum=change(str1);//调用change函数 
        printf("%d",sum);
    } 
    
    int change(char str1[100]){//定义change函数 将十六进制的数转换为十进制数 
        int i,k,m,n,sum; 
        m=strlen(str1); //使用strlen函数测量字符串长度 
          n=1;
        for(i=m-1;i>=0;i--){//从最高位开始设置循环 
            if(i<m-1)    n=n*16;//位权依次乘以16的倍数 
            if(str1[i]>='A')  sum=sum+(str1[i]-55)*n;//如果字符在A之后,减去55取其数字进行乘积 
            else sum=sum+(str1[i]-'0')*n;//否则减去零字符 取数字 注意数字字符不能直接使用,要经过ascii码的变换  
        }
        return sum; 
    }
    人生如逆旅,我亦是行人
  • 相关阅读:
    OpenJDK: How to backport patches
    C2 Basis
    大页和透明大页
    Partial Escape Analysis Notes
    C2 Split If
    PrintClassLoaderDataGraphAtExit
    Kubernetes存储(二)
    KubernetesAPI Server
    Kubernetes存储(一)
    Docker多机网络
  • 原文地址:https://www.cnblogs.com/sz2003/p/14159117.html
Copyright © 2011-2022 走看看