Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Функции ввода информации. Функция scanf() предназначена для форматированного ввода исходной информации с клавиатуры



Функция scanf() предназначена для форматированного ввода исходной информации с клавиатуры

Общий вид этой функции:

scanf (<управляющая строка>, список адресов элементов ввода>);

Количество, тип и порядок следования форматов должен точно совпадать с количеством, типом и порядком следования вводимых объектов, иначе результат ввода непредсказуем.

Для нее также как и для printf() указывается управляющая строка, в которой указываются только модификаторы форматов (без пробелов), список аргументов. Но если функция printf() использует идентификаторы переменных, константы и выражения, то scanf() использует только указатели на переменные, то есть их адреса.

Таким образом, для ввода значения переменной перед ее идентификатором требуется указать символ &, обозначающий адрес переменной.

Если нужно ввести значение строковой переменной, то использовать символ & не нужно, так как строка - это массив символов, а ID массива эквивалентно адресу его нулевого элемента, т.е. его базовому адресу. Например:

int course;

float grant;

char name[20];

printf(" Укажите курс, стипендию, имя \n");

scanf("%d%f%s",&course, &grant, name);

Вводить данные с клавиатуры можно как в одной строке через пробелы, так и в разных строках.

Функция scanf() использует практически тот же набор специфика­ций преобразования (форматов), что и функция printf(), отличия - отсутствует формат %g, форматы %e,%f - эквивалентны.

Внимание, используя функцию scanf() для ввода строки по формату %s необходимо помнить, что ввод происходит только до первого пробела. Для ввода фраз, состоящих из слов используется функция:

gets (<ID строковой переменной>);





Дата публикования: 2015-09-17; Прочитано: 214 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...