Questo programma è un semplice minigioco. Il mio problema riguarda l'inserimento di caratteri differenti da un numero. Se inserisco una lettera il programma entra in un loop infinito invece di chiudersi. Come posso fare?
Questo è il programma:
#include <stdio.h>
#include <locale.h>
#include <math.h>
int main(){
int numero;
int a;
int i=0;
int esci=0;
setlocale(LC_ALL,"");
srand(time(NULL));
a = rand()%101+0;
printf("Inserire un numero compreso tra 0 e 100:\n");
scanf("%d", &numero);
if (numero==a){
printf("Il numero inserito è corretto!\nBravo, hai completato il gioco!");
}
else {
while (a!=numero || esci==0){
if (numero>a){
printf("Alto\n");
esci=0;
}
if (numero<a) {
printf("Basso\n");
esci=0;
}
if (numero==a){
printf("Il numero inserito è corretto!\nBravo, hai completato il gioco!");
esci=1;
}
else {
printf("Inserire un altro numero:\n");
scanf("%d", &numero);
esci=0;
}
}
}
}