They have arrived at lunchtime but their flight was delayed.
A.will
B.can
C.must
D.should
答案:D
句意为“他们本该午饭时到达,但他们的航班推迟了。”will have done将来可以完成;can have done可能做过……吗?表示对过去行为的怀疑,用于疑问句;must have done一定做过某事,表示对过去事情的肯定推测;should have done本来应该做某事,而实际没做。but their flight was delayed这样的结果,说明他们本来该到达却没有到达,因此选D。