十六筒 发表于 2021-1-28 14:43:08

如何用C语言将一位十六进制数转换为十进制数

输入'0'-'9',或'a'-'f',或'A'-'F'中的一个字符,代表一个十六进制数,将其转换为十进制数,求该数与15的和并输出。

请问一下大佬们,这个该怎么写{:5_111:} {:5_111:}

qq1151985918 发表于 2021-1-28 14:48:02

int("a",16)

心驰神往 发表于 2021-1-28 14:53:46

本帖最后由 心驰神往 于 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 15:21:27

心驰神往 发表于 2021-1-28 14:53
是这样吧。上机题https://wenku.baidu.com/view/2b8f11c1c4da50e2524de518964bcf84b8d52de9.html

就是这个题,不过我们是在教材上出现的。谢谢大佬了!

十六筒 发表于 2021-1-28 15:22:17

qq1151985918 发表于 2021-1-28 14:48
int("a",16)

感谢回复!

心驰神往 发表于 2021-1-28 15:22:21

十六筒 发表于 2021-1-28 15:21
就是这个题,不过我们是在教材上出现的。谢谢大佬了!

可以的话给个最佳吧{:10_256:},我在网上查的资料

十六筒 发表于 2021-1-28 15:51:20

心驰神往 发表于 2021-1-28 15:22
可以的话给个最佳吧,我在网上查的资料

大佬,我发现我的这个题好像有些不一样。我题目里面有a-f,十六进制里面有a-f吗?

心驰神往 发表于 2021-1-28 16:01:18

本帖最后由 心驰神往 于 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 16:08:43

十六筒 发表于 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 16:11:48

十六筒 发表于 2021-1-28 15:51
大佬,我发现我的这个题好像有些不一样。我题目里面有a-f,十六进制里面有a-f吗?

https://zhidao.baidu.com/question/531109903.html,可以看下这个第二个回答

心驰神往 发表于 2021-1-28 16:18:05

#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-3-2 14:51:32

心驰神往 发表于 2021-1-28 16:18
不知道这样合适不

懂了!!谢谢大佬!!
页: [1]
查看完整版本: 如何用C语言将一位十六进制数转换为十进制数