Необходимо проверить правильность ввода числа на входе (пример: 8 -правильно, а - ошибка). Знаю, что для c++ можно сделать так:
int n;
if (cin.good()){
...
}
А как сделать то же самое, только не для cin, а для scanf. Пробовал scanf.good(), но не работает
У scanf возвращаемое значение говорит о количестве успешно прочитанных аргументов. На него и опирайтесь.
scanf это функция, не надо пытаться бездумно дописывать .good(), там где оно не имеет никакого смысла. В первую очередь - смотрите документацию.
scanf возвращает количество верно считанных значений. Т.е. если у вас scanf("%d",&n) вернет не 1 - значит, ничего не считано... Если 0 - то скорее всего потому что формат не подходит, если EOF - то проблемы с чтением, вообще не считан ни один символ.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей