The correct option is a. Have you caught.
Explanation:
This question is in the Present Perfect Simple tense, which is used to ask about completed actions in a time period that is still ongoing (today). "Have you caught" is grammatically correct and commonly used. Option b, "Have you been catching," would imply a continuous action and might be used if emphasizing the duration of fishing rather than the result (catching any fish). Option c is grammatically incorrect.