Ответ: c) has been reading
Чтобы описать действие, которое началось в прошлом и продолжается до настоящего момента (for three weeks and she still isn't finished), используем Present Perfect Continuous. "Has been reading" указывает на то, что она читает роман уже три недели и ещё не закончила.
Ответ: c) has been reading