文章

18

粉丝

0

获赞

3

访问

10.8k

头像
进制转换2 题解:自用笔记(C语言)
P1259 北京大学机试题
发布于2024年3月19日 14:13
阅读数 719

#include<stdio.h>
#include<math.h>
#include<string.h>
void fun(char* s, int n) {
	int k = 0;
	int x = 0, sum = 0;
	for (int i = n - 1; i > 1; i--) {//抹去0x
		if (s[i] >= '0' && s[i] <= '9') {
			x = s[i] - '0';
		}
		else if (s[i] >= 'A' && s[i] <= 'F') {
			x = s[i] - 'A' + 10;
		}
		else if (s[i] >= 'a' && s[i] <= 'f') {
			x = s[i] - 'a' + 10;
		}
		sum += (pow(16,k)*x);
		k++;
	}
	printf("%d", sum);
}
int main() {
	char str[100];
	int len;
	while (scanf("%s", str) != EOF) {
		len = strlen(str);
		fun(str, len);
		printf("\n");
	}
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发