Функция scanf служит для ввода информации с клавиатуры. Перед использованием функции необходимо подключить файл с описанием функции с помощью директивы
1 |
#include <stdio.h> |
Описание функции имеет вид:
1 |
int scanf(char *управляющая строка, ...) |
Функция возвращает целочисленное значение - количество считанных элементов, или EOF в случае ошибки.
Управляющая строка содержит спецификаторы, которые позволяют определить тип считываемого значения (аналогичны спецификаторам, используемым с функцией printf: %d, %f, %c и т.д.) и адрес, по которому должно будет записано введенное значение, или, другими словами указатель на переменную, в большинстве случаев адрес - это значок & и символ переменной.
Пример:
1 |
scanf("%d",&x); |
Строка считывает десятичное число с клавиатуры и записывает его в переменную x. Причем целочисленная переменная x должна быть описана заранее.
Вторым аргументом функции является адрес переменной: &x.
В случае, если некоторые данные нужно пропустить используют %*{спецификатор типа данных}.
Например:
1 |
scanf("%d%*c%d",&a,&b); |
при вводе с клавиатуры строки 2+3, считывает в переменную a значение 2, а в переменную b значение 3.
Основные спецификаторы:
- %d – десятичное целое (int),
- %f – вещественное число (float),
- %c – символ (char).