c语言 输入一个整数,将其转换为十六进制数,所得的十六进制数的每一位放在一维数组中,输出此十六进制数。
时间: 2023-06-04 12:02:18 浏览: 81
可以这样实现:
#include <stdio.h>
int main() {
int num;
scanf("%d", &num);
int hex[8]; // 数字最多占用 8 位十六进制数
int i = 0;
while (num != 0 && i < 8) {
hex[i] = num % 16;
num /= 16;
i++;
}
for (int j = i - 1; j >= 0; j--) {
if (hex[j] >= 0 && hex[j] <= 9) {
printf("%d", hex[j]);
} else {
printf("%c", 'A' + (hex[j] - 10));
}
}
return 0;
}
假设输入的整数是 345678,该程序会输出 53E26。
阅读全文