scanf ignorando, bucle infinito
int flag = 0;
int price = 0;
while (flag==0)
{
printf("\nEnter Product price: ");
scanf("%d",&price);
if (price==0)
printf("input not valid\n");
else
flag=1;
}
Cuando ingreso un número válido, el ciclo termina como se esperaba. Pero si ingreso algo que no es un número, comohello
, entonces el código entra en un bucle infinito. Simplemente sigue imprimiendoEnter Product price:
yinput not valid
. Pero no espera a que ingrese un nuevo número. ¿Porqué es eso