Many a student made that mistake before, which is another way of saying a great many students made that mistake.
A. had; has
B. has been; have
C. have; has
D. has; have
网友回答
A. had; has
B. has been; have
C. have; has
(答案→)D. has; have
解析:考场主谓一致。Many a加单数名词,谓语动词用单数,且应该用现在完成时态和主动语态,排除A,B,C;a great many加复数名词,谓语动词用复数,所以选D。