以下是一个将十六进制数转换为十进制数的C语言程序示例:
```c
#include <stdio.h>
#include <math.h>
int hexToDecimal(char hex[]) {
int decimal = 0;
int length = strlen(hex);
int base = 1;
for ( i = length - 1; i >= 0; i--) {
if (hex[i] >= '0' && hex[i] <= '9') {
decimal += (hex[i] - '0') * base;
}
else if (hex[i] >= 'A' && hex[i] <= 'F') {
decimal += (hex[i] - 'A' + 10) * base;
hex字符串是什么 }
base *= 16;
}
return decimal;
}
int main() {
char hex[100];
printf("Enter a hexadecimal number: ");
scanf("%s", hex);
int decimal = hexToDecimal(hex);
printf("Decimal equivalent: %d\n", decimal);
return 0;
}
```
这个程序首先定义了一个`hexToDecimal`函数,它接受一个表示十六进制数的字符串,并返回对应的十进制数。在`main`函数中,用户被要求输入一个十六进制数,然后调用`hexToDecimal`函数进行转换,并打印出结果。
注意,个程序假设输入的十六进制数是有效的,并且不包含前缀"0x"如果需要处理这些况,可以在代码中进行相应的修改
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论