Is that grammatically right? your help is well appreciated!

@XoyyoX (1055)
China
October 13, 2008 2:41am CST
Would you like to tell me which one of the following sentences are gramatically correct? thanks 1. I've been a teacher of English for 3 years. 2. I've been teaching English for 3 years. 3. I've taught English for 3 years.
2 people like this
5 responses
• Philippines
13 Oct 08
Number 2 is the best one. You should know that. lol
2 people like this
@XoyyoX (1055)
• China
13 Oct 08
yeah, i know that and i know which one is the best, but somehow i don't have a clear picture about the problems of the other two, i want a reasonable reason. thanks, anyway.
2 people like this
@Annie2 (594)
• United States
13 Oct 08
If you have been teaching English for three years, you should know the answer! Ha, ha. They are all wrong. You need to change "3" to the word "three."
@arthi_88 (1516)
• India
13 Oct 08
Wow I missed that point..Great!
1 person likes this
@Annie2 (594)
• United States
13 Oct 08
#2 is the best choice, by the way!
1 person likes this
@XoyyoX (1055)
• China
13 Oct 08
LOL. thanks. Annie. regardless the "3-three" thing, would you kindly explain what the grammatical problem lies behind them? LOL
2 people like this
@jerzgirl (9384)
• United States
13 Oct 08
They're all correct. They say almost the same thing three different ways. The first could refer to simply having graduated with an English teaching degree while the next two refer to the actual position obtained as a teacher.
@mommyfied (243)
13 Oct 08
I have been an English teacher for three years now.
1 person likes this
@arthi_88 (1516)
• India
13 Oct 08
Option 2 is grammatically correct..Have a nice day!