题解 | #进制转换#

进制转换

https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6

#include<stdio.h>
int main(void)
{
    char a[10];
    int len;
    int i=0;
    int b=0;
    int temp=0;
    scanf("%s",&a);
    len=strlen(a);
    for(i=len-1;i>=2;i--)
    {
        if(a[i]>='A'&&a[i]<='Z')
        {
             temp=(a[i]-'A'+10);
            for(int j=len-1;j>i;j--)
            {
                temp*=16;
            }
            b=b+temp;
        }
        else if(a[i]>='0'&&a[i]<='9')
        {
            temp=(a[i]-'0');
            for(int j=len-1;j>i;j--)
            {
                temp*=16;
            }
             b=b+temp;
        }
    }
    printf("%d\n",b);
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-01 11:27
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-03 17:37
点赞 评论 收藏
分享
点赞 评论 收藏
分享
zYvv:双一流加大加粗再标红,然后广投。主要是获奖荣誉不够,建议开始不用追求大厂,去别的厂子刷下实习。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务