Cita: usando eso, el programa cierra con S y continua con N, pero si aprieto cualquier otra letra, me repite el programa, lo que necesito es que si no aprieto ninguna de las dos indicadas, me vuelva a preguntar lo mismo hasta que ponga alguna de las teclas que pide, el fflush lo dejo?
???????
Lo has probado?. A mi me funciona tal como dices perfectamente.
Te pongo un ejemplo completo y más sencillo para que lo puedas probar tu mismo rápidamente:
Código C:
Ver originalint main() {
char s;
do {
puts("Ejecuta programa"); do {
"\nPresiona S si deseas terminar el programa de lo contrario presiona N ");
} while (s != 'N' && s != 'n' && s != 'S' && s != 's');
} while (s != 'S' && s != 's');
return 0;
}
Respecto a lo de usar el fflush, como ves no hace falta si dejas un espacio antes del %c. Hay otras formas de hacerlo:
http://faq.cprogramming.com/cgi-bin/...&id=1043284392
Un saludo