我认为答案应该是B,说话人是作家,写书就是他的职业。多年来以写书为生/为职业,这是习惯完成体。A为错误,因为这是事件完成体。终结动词的现在完成时不能与for时间状语连用。如果书还没有写完,或者在说话时刚刚写完,则应该用现在完成进行时,I have been writing the book for years. 如果这本书已经写完,想要表示写书用了很多年的时间,则应该是 It has taken me years to write the book.
 
                如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!

 《高考英语备考1号·速效编》
						《高考英语备考1号·速效编》
					 《高考英语备考1号·写作编》
						《高考英语备考1号·写作编》
					 《高中英语晨读晚记》
						《高中英语晨读晚记》
					 《高中英语错题笔记》
						《高中英语错题笔记》
					 《零起点考大学英语》
						《零起点考大学英语》
					