是应选C,给你简单说说:
大意:老师让谁为全班写信?
首先说明,这里have和write只是碰了一面而已(碰巧挨在一起),无任何关系.
将原句还原成陈述语序:
The teacher had who write the letter for the whole class.
此处have 用做"have sb.(who) do sth."表示让某人做某事.
另外,for the whole class 改为 to the whole class也可,两种表达都讲的通.
这样一看,A B D都在误导你认为此处have(has)是完成式的标志,对吧.