You can use the -li option to list the inode of a file. You can also use find to list the inode of file. The find command has a -printf subcommand that is flexible in what is printed.
The structures of a filesystem are in the kernel land domain, and are something that the kernel driver manipulates, unless it is done indirectly through system calls or via the fuse module. The fuse modules allow you to create filesystem that run in user land, using the full C environment.
On the other hand, if you have read/write access to the partition's device, you can do an end run around the kernel and manipulate the filesystem directly. This is what programs like fsck.ext3 and tune2fs do. You will need to run these programs as root. You could write your own program to examine ext3 file structures and display them how you wish. The source code for programs like fsck.ext3, or the ext3 driver in the kernel might help.
I don't know of any program which does exactly what you want. There is dumpe2fs which can display some information on ext3 filesystems, including the locations of the inode tables on the filesystem.
Code:
...
Group 2: (Blocks 65536-98303)
Block bitmap at 65536 (+0), Inode bitmap at 65537 (+1)
Inode table at 65538-66049 (+2)
559 free blocks, 2318 free inodes, 208 directories
Free blocks: 86655-86866, 86869-86898, 86900-86978, 86980-87206, 91852-91862
Free inodes: 22236-22258, 22260, 22283-24576
...
Knowing the locations of the tables, you could use a disk bit editor or a program like hexdump or od to list areas on the disk.
You can also use dd to cut out a part of the filesystem and examine the file you saved instead of the actual tables on the disk.