The correct answer is: B. He asked me, “Why didn’t you come on time the previous day?”
A. He said to me, “Why didn’t I come on time yesterday?” is incorrect because the speaker is asking the listener a question, not making a statement.
C. He asked me, “Why you didn’t come on time yesterday?” is incorrect because the speaker is using the informal pronoun “you” when addressing the listener, who is presumably a stranger or someone of higher status.
D. He asked me, “Why didn’t you come on time yesterday?” is correct because the speaker is using the formal pronoun “you” when addressing the listener, and is asking a question in a polite and respectful manner.