c语言程序设计大作业吧 关注:47贴子:148
  • 0回复贴,共1

任意进制(2进制~16进制)转十进制(0~2147483647)。

只看楼主收藏回复

本贴接上贴:
任意进制(2进制~16进制)转十进制(0~2147483647):
#include <stdio.h>
#include <string.h>
void main() {
int res = 0, radix, i, k = 1;
char num[32], table[] = "0123456789ABCDEF";
printf("请输入待转换的字符串:");
scanf("%s", &num);
printf("待转换字符串为几进制:");
scanf("%d", &radix);
for (i = strlen(num) - 1; i >= 0; i--) {
res += (strchr(table, num[i]) - table) * k;
k *= radix;
}
printf("转换结果:%d", res);
}


IP属地:湖北1楼2020-12-26 22:21回复