Before running with missing data, you need to make the case that there's no plausible reason why non-respondents would have different answers from respondents.
Did you not count all the people that didn’t respond?
This is just a problem with inference, not the sampling. “100% of the _respondents_ answer unsolicited phone calls _at least some of the time_”.
You are making a much stronger assumption than this. You are assuming access to demographic information of each subject, as well as population base rates for a sufficient set of attributes to correct for non-response bias. Maybe we have that, maybe we don’t. If we don’t, option A is a good tack.
Perhaps choice C was: Start again with a new random sample of students, but this time offer FREE FOOD to everyone who responds.
You can still get information out of your sample of that form, but its very bad, and you should only pay attention to it if you can't afford to get anything better.