How long … this book?

(a) do you read
(b) are you reading
© have you been reading
(d) have you read

I marked (c), but the key answer is (d). Could anyone explain it to me why (d) is correct answer?

  Many thanks.

It isn’t. It seems the answer key is wrong.
© is the correct answer.