@Gagatyn
Самоучка

Как проверить на ввод числа?

Здравствуйте.
Появилась непонятная ситуация у меня.
do { 
printf("enter item of grid: "); 
fflush(stdin); 
} while(scanf("%d", &input_number_grid) != 1 && printf("you need to enter number from 3 to %d\n", size_grid*size_grid) 
|| input_number_grid < 1 && printf("you need to enter > 0\n") 
|| input_number_grid > (size_grid*size_grid) && printf("you need to enter <= %d\n", size_grid*size_grid));

При такой проверки не допускаются буквы, символы, только числа. Но есть трюк такой строка 6оляля4ерный примится за истину, 6 или 4 будут использоваться. Как ограничить?
  • Вопрос задан
  • 55 просмотров
Пригласить эксперта
Ответы на вопрос 1
@res2001
Developer, ex-admin
Считывать по символьно с помощью getchar() и анализировать каждый символ.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы