21xrx.com
2024-12-23 01:41:57 Monday
登录
文章检索 我的文章 写文章
如何在C语言中将10进制转化为16进制
2023-06-17 19:28:44 深夜i     --     --
C语言 十进制 十六进制

C语言是一种广泛使用的计算机编程语言,具有高效性和可移植性。在C语言中,有时需要将十进制数转换为十六进制数,这可以通过使用函数或数组来实现。下面介绍了两种方法:

方法一:使用函数实现

在C语言中,可以使用sprintf()或printf()函数来将十进制数转换为十六进制数。sprintf()函数可以将格式化的字符串写入字符数组中,而printf()函数可以将格式化的字符串打印到终端上。以下是使用sprintf()函数将十进制数转换为十六进制数的示例代码:


#include

#include

int main()

{

  int num = 12345;

  char hex[10];

  

  sprintf(hex, "%x", num);

  

  printf("The hex value of %d is %s\n", num, hex);

  

  return 0;

}

这段代码的输出结果为:


The hex value of 12345 is 3039

方法二:使用数组实现

另一种将十进制数转换为十六进制数的方法是使用数组。可以根据十进制数的每一位计算对应的十六进制数,然后将它们保存在数组中。以下是使用数组将十进制数转换为十六进制数的示例代码:


#include

#include

int main()

{

  int num = 12345, i=0, rem;

  char hex[10];

  

  while(num!=0)

  {

    rem = num % 16;

    

    if(rem<10)

      hex[i++] = rem + 48;

    else

      hex[i++] = rem + 55;

    

    num /= 16;

  }

  hex[i] = '\0';

  

  printf("The hex value of 12345 is %s\n", strrev(hex));

  

  return 0;

}

这段代码的输出结果为:


The hex value of 12345 is 3039

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复