Образовательная поддержка I В помощь студенту и аспиранту
Стандартная функция scanf
Функция предназначена для ввода информации со стандартного устройства ввода (stdin), которым обычно является клавиатура.
БНФ: "scanf" "(" формат { "," аргумент } ")" Пример: scanf( "%d", &n );
Перед именем аргумента функции подставляется знак &, который делает переменную n доступной для изменения. Строго говоря, операция & означает получение адреса объекта данных, т.е. мы сообщаем функции scanf информацию о том, где находится ячейка, в которую необходимо занести данные. При использовании функции scanf совместно с данными типа int, long, float, double, перед именем переменной всегда должен стоять знак &. При использовании функции для ввода символьной строки знак & не нужен, т.к. имя массива символов и так означает адрес.
Например: char name[41]; scanf( "%s", name );
Функцию scanf рекомендуется использовать без лишних символов в формате, иначе может возникнуть непредсказуемая ситуация. В формате должны быть только спецификации преобразования без всяких пробелов и других символов. Это связано с тем, что возможности функции scanf на самом деле значительно шире, чем описано в этом параграфе.
Функция scanf возвращает число успешно прочитанных элементов данных. Это свойство можно использовать для проверки правильности ввода.
Функцию scanf нужно использовать совместно с printf для вывода подсказки.
Например: printf( "Введите ваше имя "); scanf("%s", name );