Why Can Varied Species Live Together in Particular Ecosystems?
The answer should be B "Each spices occupies a different niche" because this is the only answer that reflects a model of species coexistence.  Niche theory proposes a mechanism that allows multiple species to occupy the same space and time any yet avoid competition for limited resources.  Briefly, the model says that a species niche is the total suite of resources that it requires to survice and reproduce and that coexisting species will limit their niche overlap to avoid competition (and its requisite reduction in fitness).  Species can limit niche overlap by preferentially using a subset of resources that are not shared with potentially competing species (this is called the realized niche) or by evolving a new niche that does not overlap with the competitor (this is called character displacement).

Note that your reasoning is incomplete because the question does not specify that the organisms listed are the complete set of organisms  in the community.  For example if the community contained another species of grass, then choice "C" would be false.  Most importantly though, habitat or trophic variation are not mechanisms of coexistence, so they should not be used as general hypotheses explaining coexistence.