编写C++程序 实现十六进制转二进制
时间: 2024-05-15 16:18:52 浏览: 128
好的,这是一个技术问题,我可以帮您回答。以下是一个简单的C程序,用于将十六进制数转换为二进制数:
```
#include <stdio.h>
#include <string.h>
int main() {
char hex[17];
long long bin, place;
int i = 0, digit, val;
printf("请输入一个十六进制数:");
scanf("%s", hex);
bin = 0ll;
place = 0ll;
for (i = 0; hex[i] != '\0'; i++) {
bin = bin * place;
digit = hex[i];
if (digit >= '0' && digit <= '9') {
digit = digit - '0';
} else if (digit >= 'a' && digit <= 'f') {
digit = digit - 'a' + 10;
} else if (digit >= 'A' && digit <= 'F') {
digit = digit - 'A' + 10;
}
bin = bin + digit;
place = 16;
}
place = 1ll;
while (bin > 0) {
val = bin % 2;
printf("%d", val);
bin = bin / 2;
place = place * 10;
}
return 0;
}
```
输入一个十六进制数,程序将其转换为二进制数并输出。
阅读全文