21xrx.com
2025-06-14 15:47:20 Saturday
文章检索 我的文章 写文章
如何用C语言编写10进制转换成16进制
2023-06-19 10:28:51 深夜i     13     0
C语言 进制转换 字符数组

当我们需要将10进制数转换成16进制数时,可以使用C语言来编写一个转换函数,以下是一个简单的示例代码:

#include 
void decimal_to_hexadecimal(int decimal){
 char hexadecimal[17];
 int i = 0, remainder, quotient = decimal;
 
 while(quotient != 0){
  remainder = quotient % 16;
  if(remainder < 10){
   hexadecimal[i++] = remainder + 48;
  }else{
   hexadecimal[i++] = remainder + 55;
  }
  quotient /= 16;
 }
 
 printf("The hexadecimal value is ");
 
 for(int j = i - 1; j >= 0; j--){
  printf("%c", hexadecimal[j]);
 }
}
int main(){
 int decimal = 12345;
 
 decimal_to_hexadecimal(decimal);
 
 return 0;
}

在此示例代码中,我们使用了一个while循环来对10进制数进行除法运算,并将余数存储在一个字符数组中。特别的,如果余数小于10,则将其转换成字符并将其添加到字符数组中,如果余数大于10,则将余数转换成相应的字母并将其添加到字符数组中。 最后,我们倒序打印字符数组中的内容,即为转换后的16进制数。

  
  

评论区