#include <stdio.h>
const int first = 0x21;
const int last = 0x7e;
const int height = 16;
const int begin = (first / height * height);
const int end = (last / height * height + height);
const int width = (end - begin) / height;
int main(void)
{
int i, j;
for(i = begin; i < end; i += height)
printf(" 0x%2x", i);
printf("\n");
for(i = 0; i < height; ++i)
{
printf("%x", i);
for(j = 0; j < width; ++j)
{
int c = begin + i + j * height;
(first <= c && c <= last) ? printf( (j == width-1)? " %c\n" : " %c ", char(c) ) : printf(" ");
}
}
return 0;
}