题解 | #进制转换#
进制转换
https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6
#include <stdio.h> #include <string.h> #include <math.h> int main() { int a = 0, b = 0, c = 0; char buff[128] = ""; char A = '9'; scanf("%s", &buff); a = strlen(buff); for(int i = 2; i < a; i++) { if (buff[i] >= '0' && buff[i] <= '9' ) { c= buff[i] - '0'; } else if(buff[i] >= 'a' && buff[i] <= 'f') { c = (int)buff[i] - 'a' + 10; } else if(buff[i] >= 'A' && buff[i] <= 'F') { c = (int)buff[i] - 'A' + 10; } else { printf("输入非法\n"); } b = b + c * pow(16, (a-i-1)) ; } printf("%d\n", b); return 0; }#你们的毕业论文什么进度了#