输入一个十六进制的字符串转换为十进制的整数
程序员文章站
2023-12-27 21:54:03
...
在十六进制中0到9的字符依次对应十进制的0到9;十六进制中的a到f对应十进制中的10到15;其中a到f不分大小写,编写一个程序输入一个十六进制的字符串,输出对应的十进制整数。
代码如下:
#include<stdio.h>
#include<string.h>
#include<math.h>
int main()
{
char ch;
int j = 0;
int sum = 0,i=0;
char str[50];
scanf("%s", &str);
int n = strlen(str);
for (i = n - 1; i >= 0; i--)
{
if (str[i] >= '0'&&str[i] <= '9')
{
sum = sum + (str[i] - '0')*pow(16, j); j++;
}
if (str[i] >= 'a'&&str[i] <= 'f')
{
sum = sum + (str[i] - 'a' + 10)*pow(16, j); j++;
}
if (str[i] >= 'A'&&str[i] <= 'Z')
{
sum = sum + (str[i] - 'A' + 10)*pow(16, j); j++;
}
}
printf("%d", sum);
return 0;
}
推荐阅读
-
输入一个十六进制的字符串转换为十进制的整数
-
一个整数的二进制序列倒置后再转换为十进制的整数
-
将一个整数转换为16进制的字符串
-
编写一个程序,输入一个整数以及要转换的进制,输出转换结果,结果以字符串方式输出,例如 输入10814 16,把10814转换为16进制的字符串“2A3E”,如果输入10814 2,则10814
-
C#十六进制字符串转十进制int的方法
-
C#十六进制字符串转十进制int的方法
-
c++编写递归函数char *itostr (int n,char *string),该函数将整数n转换为十进制表示的字符串。
-
9、试编写程序,输入一个字符串,再输入一个字符ch,将字符串中所有的ch字符替换为字符’*’。 要求定义和调用函数mChar(s, c ),该函数将字符串s中出现的所有c字符替换为’*’。
-
输入一个非负整数(十进制),输出此整数对应的二进制数
-
请输入一个十六进制数,并输出相对应的二进制整数