#include<stdio.h> #include<string.h> int fun(int n,int c)//这个是求每一位对应的十进制是多少 { if (c == 0) return n; else return n= fun(n, c - 1)*16; } int main() { char a[80], b[80]; int i = 0, j = 0; gets_s(a); for (int i = 0; a[i] != '\0';i++) { if ((a[i] >= '0' && a[i] <= '9') || (a[i] >= 'A' && a[i] <= 'F')) { b[j] = a[i]; j++; } } b[j] = '\0'; int sum =0; for (int k=j-1,l = 0;l<j;l++,k--) { int t; if (b[l] >= '0' && b[l] <= '9') { t = b[l] - 48; } else t = b[l] - 55; sum += fun(t,k);//求和 把所有的加起来 构成10进制 } printf("%d\n",fun(2,2)); for (int m = 0; m < j; m++) printf("%c",b[m]); printf("\n"); printf("%d",sum); return 0; }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步