¿Por qué mezclas cprintf y cout??? usa cout directamente y tendrás un código más claro:
Código C++:
Ver original// original
gotoxy(24,11); cprintf("Ingresados: "); cout << contador; cprintf(" Empleados");
// propuesta
gotoxy(24,11); cout << "Ingresados: " << contador << " Empleados";
ahora, si te fijas en estas dos líneas:
Código C++:
Ver originalif (opcion == 1){
while (opcion != 1){
Tienes una incoherencia: si eliges la opción 1 entrarás en el if pero no se ejecutará el while, mientras que si eliges la opción 0 no entrarás en el if... por lo que el while tampoco se ejecutará. Ese '!=' del while debería ser un '=='.
A modo de bonus te diré que el if sobra, es totalmente redundante y lo puedes borrar sin ningún miedo.
Y bueno, podrías hacer que el código luciese un poco mejor eliminando las variables globales y el código repetido.
Un saludo.