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

Функции ввода информации



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

scanf (управляющая строка, список адресов объектов ввода);

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

Список объектов ввода представляет собой адреса переменных, разделенные запятыми, т.е. для ввода значения переменной перед ее идентификатором указывается символ &, обозначающий операцию «взять адрес».

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

int course;

double grant;

char name[20];

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

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

Вводить данные с клавиатуры можно как в одной строке через пробелы, так и в форме разных строк, нажимая после ввода текущего объекта клавишу Enter.

Функция scanf () использует практически тот же набор модификаторов форматов, что и printf (); отличия от функции вывода следующие: отсутствует формат % g, форматы % e,% f – эквивалентны. Для ввода коротких целых чисел введен модификатор формата % h.

Внимание. Функцией scanf () по формату % s строка вводится только до первого пробела.

Для ввода фраз, состоящих из слов, разделенных пробелами, используется функция

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

Символы вводятся при помощи функции getch (). Причем простой ее вызов организует паузу, при которой система программирования приостановит выполнение программы и будет ждать нажатия любой клавиши. Так поступают в том случае, когда нужно просмотреть какие-то результаты работы, при выводе их на экран монитора.

Если же использовать ее в правой части операции присваивания, например:

char c;

...

c = getch();

то символьная переменная с получит значение кода нажатой клавиши.

С началом работы любой программы автоматически открываются стандартные потоки для ввода (stdin) и вывода данных (stdout), которые по умолчанию связаны с клавиатурой и экраном монитора соответственно.

Внимание. Ввод данных функциями gets (), getch () выполняется с использованием потока stdin. Если указанная функция не выполняет своих действий (проскакивает), перед использованием необходимо очистить поток (буфер) ввода с помощью функции

fflush (stdin);

__________________________________________________________________

В языке С++ существует наиболее простая с точки зрения использования возможность ввода-вывода - потоковый ввод-вывод, основы которого рассмотрены в разд. 16.1, 16.2.

__________________________________________________________________





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



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