El error se debe a que al pulsar la tecla enter, se añade otro caracter (caracter nulo, \n) al buffer. Por lo que mira lo que pasa con el buffer.
[buffer= ]
-pedimos que se inserte letra
<usuario inserta 'b' y pulsa enter>
[buffer= b, \n]
Al haber 2 caracteres en el buffer cada vez que introduces una letra, el bucle while se ejecuta dos veces. La solución, vaciar el buffer antes de pedir letra.
Código C:
Ver original#include <windows.h>
#include <stdio.h>
#include <mmsystem.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
char letra;
printf("Pulse una tecla para comenzar a jugar\n"); printf("El juego termina cuando apriete la tecla 'a'.\n"); scanf("%c",&letra
);//Crea el espacio para poder asignar la tecla
while(letra!='a')
{printf("Bienvenido a esta ..., por favor, vuelva a intentarlo.\n");
return 0;
}