Ввести целое десятичное число, считывая по одному символу с помощью getchar(). Число может начинаться с + или -, в конце ввода должен быть перевод строки (и только он). Если ввод некорректен, вывести "NaN" (Not a Number), если корректен — введённое число. Попытка ввода числа за пределами констант INT_MIN и INT_MAX из #include <limits.h> также считается NaN.
+12345
Подсказка 1: getchar() возвращает ASCII — коды введённых символов. Символы '0' … '9' — это 48 … 57. Так что цифра, соответствующая символу n, — это n - '0'.
Переменные типа char можно сравнивать на < / >
12345
Подсказка 2: Я хранил результат в long int, тогда его можно легко сравнить с INT_MIN / INT_MAX
