Key, plaintext block and ciphertext block permutations question
The answers very are very easy if you know about binary representations.

$k$-bit means the binary representation contains $k$ binary digits.

xx......xx : k binary digits


For each position can be 0 and 1 so, a $k$-bit can take $2^k$ distinct values.

You can similarly argue for $b$-bit block size, if you know that block size is the input  size for block ciphers.

Since block-ciphers are keyed permutations the input space equal to output space.