如何用C语言将一位十六进制数转换为十进制数
输入'0'-'9',或'a'-'f',或'A'-'F'中的一个字符,代表一个十六进制数,将其转换为十进制数,求该数与15的和并输出。请问一下大佬们,这个该怎么写{:5_111:} {:5_111:} int("a",16) 本帖最后由 心驰神往 于 2021-1-28 14:57 编辑
#include <stdio.h>
int main()
{
char ch;
int sum;
ch= getchar();
sum= ch- 'A'+ 10+ 15;
printf("%d\n",sum);
return 0;
}
是这样吧。上机题https://wenku.baidu.com/view/2b8f11c1c4da50e2524de518964bcf84b8d52de9.html 心驰神往 发表于 2021-1-28 14:53
是这样吧。上机题https://wenku.baidu.com/view/2b8f11c1c4da50e2524de518964bcf84b8d52de9.html
就是这个题,不过我们是在教材上出现的。谢谢大佬了! qq1151985918 发表于 2021-1-28 14:48
int("a",16)
感谢回复! 十六筒 发表于 2021-1-28 15:21
就是这个题,不过我们是在教材上出现的。谢谢大佬了!
可以的话给个最佳吧{:10_256:},我在网上查的资料 心驰神往 发表于 2021-1-28 15:22
可以的话给个最佳吧,我在网上查的资料
大佬,我发现我的这个题好像有些不一样。我题目里面有a-f,十六进制里面有a-f吗? 本帖最后由 心驰神往 于 2021-1-28 16:09 编辑
十六筒 发表于 2021-1-28 15:51
大佬,我发现我的这个题好像有些不一样。我题目里面有a-f,十六进制里面有a-f吗?
应该是这样的:首先,你要明白16进制有哪些数字组成。其组成是 0-9,A-F(或a-f,大小写无关),其表示十进制的0-15的这16个数。 a--f表示十进制的10--15。 十六筒 发表于 2021-1-28 15:51
大佬,我发现我的这个题好像有些不一样。我题目里面有a-f,十六进制里面有a-f吗?
应该是这样的:首先,16进制的组成是 0-9,A-F(或a-f,大小写无关),其表示十进制的0-15的这16个数。 a--f表示十进制的10--15 十六筒 发表于 2021-1-28 15:51
大佬,我发现我的这个题好像有些不一样。我题目里面有a-f,十六进制里面有a-f吗?
https://zhidao.baidu.com/question/531109903.html,可以看下这个第二个回答 #include <stdio.h>
int main()
{
char ch;
int sum;
ch= getchar();
if (ch >= 'A' && ch <= 'F')
sum= ch- 'A'+ 10+ 15;
else
sum= ch- 'a'+ 10+ 15;
printf("%d\n",sum);
return 0;
}
不知道这样合适不 心驰神往 发表于 2021-1-28 16:18
不知道这样合适不
懂了!!谢谢大佬!!
页:
[1]