--How long have you been in the school?--By the end of 2012,
--How long have you been in the school?--By the end of 2012,i _English for exactly 30 years and i __in 5years. A.willl have taught;will retire B.have been teaching; am to retire 但我想不通a 不是挺对的么
By the end of 2012,i _English for exactly 30 years and i __in 5years. by开头,表示“到……(某时间)”且其间一直持续,所以用been teaching表示延续性状态 am to retire则表示到某时间注定会发生的事件 ,A其实口语中可能这么用,但这种考察严格语法的单选题要选出最适当的答案