Ребята пробую написать программу и в ней нужно выбрать пункт, но когда вводишь неправильную комбинацию, именно любую строку, то программа цикилится.
Хочу сделать защиту от дурака...
Помогите решить данную проблему пожалуйста.
Вот функция, если я введу неправильную цифру, то всё правильно обработается и попросит ввести заново, но если я введу знак/строку то всё циклится....:
Как исправить проблему с зацикливанием? Я так понимаю всё дело в типе... целочисленному типу присваивают строку... или нет? и как решить эту проблему?
Код: Выделить всё
int select() {
int option;
printf("\n* Введите номер действия:: ");
scanf("%i" , &option );
while( ( option>'a' && option<'z' ) || ( option<=0 || option>5 ) ) {
printf("\n* Введите номер действия:: ");
scanf("%i" , &option );
}
switch( option ) {
//case 1: search(); break;
case 2: list(); break;
case 3: addWord(); break;
//case 4: deleteWord(); break;
case 5: exit; break;
default: select(); break;
}
}