严重同意楼主的观点,此处应为that
It +be +强调部分 + that (who) + 主谓句.当强调的部分是人,且为句子的主语时,才用 "who",其余用that.
原句:My father did the experiment in the lab yesterday evening.
强调主语:It was my father who did the experiment in the lab yesterday evening.
强调宾语:It was the experiment that my father did in the lab yesterday evening.
强调时间:It was yesterday evening that my father did the experiment in the lab.(注意不用when)
强调地点:It was in the lab that my father did the experiment yesterday evening.
若是强调句,去掉It be… that之后,还应是一个完整的句子,而此处去掉强调句结构之后,此句依然是语法和逻辑都正确的句子,即In the library we read some books the day before yesterday.应该用that.
补充问题的回答:
这道题本身就有问题,如果用where:
Where did you come across Tom?
回答:In the library where we read some books the day before yesterday.
或者:We came across Tom in the library where we read some books the day before yesterday.
其实,我个人感觉用when更好:
Where did you come across Tom?
回答:In the library when we were reading some books the day before yesterday.
或者:We came across Tom in the library when we were reading some books the day before yesterday.
根本不可能用It was 句型.
如果出现It was 句型,个人意见还是用 that.
出这道题的人太变态,纯粹是为了考试而考试,不适用,逻辑上也讲不通.中国人出的英语题大多如此,害人,害人啊.