For (a), check the following tip:
Java Tips - Compare two dates
You will just need to compare all dates with the given dates and only display the events between these two dates.
The logic of (b) looks correct. For (c), you can display the events that will be performed between the start and end date of the given month.