Hola a todos. Me explico: Llevo varios días intentando depurar un programa que me da infinidad de errores, la mayoría de los cuales he llegado a la conclusión que se producen por que el 'scanf' me lee datos introducidos anteriormente. Ejemplo:
Código C++:
Ver originaldo{
accion == ' ';
if (accion == 'e' || accion == 'E'){
accion == ' ';
entrar_vehiculo();
} else if (accion == 's' || accion == 'S'){
accion == ' ';
salir_vehiculo();
}
printf("\nIndique acción a realizar (Si entra vehiculo pulse 'E', si sale vehiculo pulse 'S' si desea finalizar el programa pulse 'F'): ");
} while (accion!= 'f' && accion != 'F');
La primera vez el bucle funciona correctamente, pero las siguientes el 'printf' se me repite dos y hasta tres veces porque, creo, el 'scanf' lee datos "residuales" que he introducido para otras funciones del programa en lugar de esperar a que introduzca nuevos datos, de manera que el bucle da una vuelta sin realizar ninguna acción y vuelve a introducir el texto. Creo que es un error básico, pero no he encontrado solución clara. Agradeceré cualquier aportación.