"Hail" and "rain" do rhyme -- but only in a specialized way that may not have been intended by the question on the test.
Strict rhyme means that the end sound of the words is the same, so "hail" ending with an "l" sound could not rhyme with "rain," which ends with an "n" sound.
However, there is a kind of rhyming which recognizes the vowel sound inside the words. When these are the same -- such as the "long a" sound in both "hail" and "rain" -- then this kind of rhyme is called "assonance."
So if the test question was meant to see if the students had learned a lesson about "assonance," then they would have been expected to say that those two words rhyme. But if the test question was meant to see if the students had learned a lesson about strict rhyme, then they would be expected to say that the two words do not rhyme.
http://en.wikipedia.org/wiki/Assonance
I think, under the circumstances of controversy, that you should get your A+.