C语言编程练习:写一个函数,输入一个十六进制数,输出相应的十进制数。
时间: 2023-11-20 21:11:17 浏览: 175
好的,下面是代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int hexToDec(char hex[])
{
int len = strlen(hex);
int base = 1;
int dec = 0;
for (int i = len - 1; i >= 0; i--)
{
if (hex[i] >= '0' && hex[i] <= '9')
{
dec += (hex[i] - 48) * base;
base = base * 16;
}
else if (hex[i] >= 'A' && hex[i] <= 'F')
{
dec += (hex[i] - 55) * base;
base = base * 16;
}
else if (hex[i] >= 'a' && hex[i] <= 'f')
{
dec += (hex[i] - 87) * base;
base = base * 16;
}
}
return dec;
}
int main()
{
char hex[100];
printf("请输入一个十六进制数:");
scanf("%s", hex);
int dec = hexToDec(hex);
printf("%s 的十进制数为 %d\n", hex, dec);
return 0;
}
```
运行程序后,输入一个十六进制数,程序会输出相应的十进制数。
阅读全文