Direct Cache Mapping - Addressing
Your cache is direct mapped so there are no sets. Those are set associative caches.

In your example the tag is 26 bit, block 4 bit and byte offset is 2 bit.

To get that just break your 32 bits into tag, block and byte fields.
16 blocks means 4 bits to address a block.
4 byte blocks means 2 bits to address bytes within blocks.
Rest of the bits are 26, which is the tag.
When you convert 0xC4001234 to binary and remove first 26 bits and the last 2 bits that gives you the 4 block bits.

In your case it is 1101 or block 13 of 0-15.