用c语言写一段16进制转10进制代码
时间: 2023-10-16 09:07:31 浏览: 168
可以的,以下是C语言的16进制转10进制代码:
```c
#include <stdio.h>
int main() {
char hex[10];
printf("请输入一个16进制数:");
scanf("%s", hex);
int dec = 0;
int index = 0;
while (hex[index]) {
char ch = hex[index];
int digit;
if (ch >= '0' && ch <= '9') {
digit = ch - '0';
} else if (ch >= 'a' && ch <= 'f') {
digit = ch - 'a' + 10;
} else if (ch >= 'A' && ch <= 'F') {
digit = ch - 'A' + 10;
} else {
printf("输入不合法!\n");
return 0;
}
dec = dec * 16 + digit;
index++;
}
printf("它的10进制值为:%d\n", dec);
return 0;
}
```
注意,上述代码输入的16进制数长度不超过10位。如果超过了,需要做一些适当的调整。
阅读全文