The correct option is C Ann didn't earn so much last year.
Option C: 'Didn't earn' is in the simple past tense. It states an action that happened (or didn't happen) in the past (last year).
The sentence is meaningful and hence option C is correct.
Option A: 'Has not been earning' states a present continuous action, whereas the action happened 'last year'.
Option B: 'Don't earn' is in simple present tense whereas the action happened in the past: 'last year'.
Option D: 'Had not earned' states a past perfect action. This tense expresses an action that completed in the past, before another action took place.
The sentence does not agree with the past perfect tense, as it has only one past action.
Hence options A, B and D are incorrect.