C语言将十进制正整数化为十六进制数
时间: 2023-11-29 09:07:01 浏览: 100
以下是一个将十进制正整数转化为十六进制数的C语言代码示例:
```c
#include <stdio.h>
int main() {
int decimal, remainder;
char hex[100];
int index = 0;
printf("Enter a decimal integer: ");
scanf("%d", &decimal);
while (decimal > 0) {
remainder = decimal % 16;
if (remainder < 10) {
hex[index] = remainder + '0';
} else {
hex[index] = remainder + 55; // 55 is ASCII code for 'A'
}
index++;
decimal /= 16;
}
printf("The hexadecimal representation is: ");
for (int i = index - 1; i >= 0; i--) {
printf("%c", hex[i]);
}
printf("\n");
return 0;
}
```
该程序先提示用户输入一个十进制正整数,然后通过循环将其转化为十六进制数,并将结果保存在一个字符数组中,最后逆序输出该数组以得到正确的十六进制表示。需要注意的是,十六进制数中的字母部分需要使用 ASCII 码进行转换。
阅读全文