............................................. PD: acostumbrate a usar las etiquetas GeSHi cuando escribas código en un foro para que sea más fácil de leer
Aunque las has usado mejor elige las de C++, así el código sale coloreado y es más fácil de seguir.
Muchas veces el compilador señala el error una linea después. Eso es así por que si el error es como en tu caso que al final de la linea falta el ; el error te salta que falta un punto y coma y te dice algo como blablabla before. Si no encuentras nada mire una linea antes que puede estar ahí el error.
Ah, ..... y no uses system("PAUSE"). Las órdenes system dependen su comportamiento del sistema operativo por lo que pueden hacer el programa "no portable" entre distintas máquinas. En su lugar usa getchar() que es una función estándar de C y por lo tanto tiene un comportamiento bien definido.
En línea
Saludos, Yoel. P.D..- Para mayores dudas, puedes enviarme un mensaje personal (M.P.)