Respuestas
En general, recordemos que el Presente Perfecto en inglés es una mezcla entre el presente y el pasado. Lo usamos para acciones en el pasado que tienen importancia en el presente.
Su construcción es la siguiente: Sujeto + Verbo auxiliar to have + Participio pasado + Complemento.
Ejemplo:
I + have + talked + to Peter. (He hablado con Peter).
She + has + gone + to work. (Ha ido a su trabajo).
Ahora, utilizamos el presente perfecto con las preposiciones for y since cuando queremos indicar cuánto tiempo se lleva realizando una acción.
Para expresar la cantidad de tiempo que se lleva haciendo dicha actividad utilizamos for. Por ejemplo: I haven't been to that restaurant for six months. (No he estado en ese restaurante en tres meses).
Para señalar el momento concreto en que se empezó dicha actividad utilizamos since. Por ejemplo: They haven't had holidays since last summer. (No han tenido vacaciones desde el verano pasado).
Entonces, basándonos en ello, respondemos:
2. I have been in year 4 for two months. (He estado dos meses en cuarto año/Llevo dos meses en cuarto año).
3. The teacher has been in the class since 7:30. (El profesor ha estado en la clase desde las 7:30)
4. I haven't had anything to eat for a long time. (No he tenido nada para comer en mucho tiempo).
5. The schools have been closed since March 16th. (Las escuelas han estado cerradas desde el 16 de marzo).
6. My best friend has had a new car for a week. (Mi mejor amigo ha tenido un carro nuevo durante una semana).
7. My father has worked for that company since he was young. (Mi padre ha trabajado para esa compañía desde que era joven).
8. Mr. Smith has been in prison for many years. (El señor Smith ha estado en prisión por muchos años).
9. The children hasn't played in the garden for two days. (El niño no ha jugado en el jardín en dos días).
10. Mum hasn't driven her car since she had the accident. (Mamá no ha conducido su auto desde que tuvo el accidente).
Cualquier pregunta estoy dispuesta a responderla.
Good luck.
Greetings!