第2回勉強会の回答案1
こんなのでどうだろうか。
hex_dump.c
#include <stdio.h> void hexDump(int x); int main(void); void hexDump(int x) { int r; r = x % 16; x = x / 16; if (x > 0) { hexDump(x); } if (r >= 0 && r <= 9) { printf("%d", r); } else if (r > 9) { putchar('A' + r - 10); } } int main(void) { int x; printf("input number\n"); scanf("%d", &x); printf("x = %d\n", x); if (x < 0) { printf("x = -0X"); x = abs(x); } else { printf("x = 0X"); } hexDump(x); printf("\n"); return 0; }
gcc hex_dump.c -o hex_dump