Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Назначение и описание функции
Функция позволяет ввести информация с клавиатуры. Функция определяется в библиотеке < stdio.h>. Синтаксис: scanf(< управляющая строка>, < список адресов переменных>); где < управляющая строка> - строка, которая может содержать только спецификации формата, перечень допустимых значений спецификаций тот же самый, что и для функции printf() (см. табл. 3.1.); < список адресов переменных> – содержит перечисленные через запятую адреса переменных, вводимых функцией. Адрес переменной указывается символом & и далее идет идентификатор переменной, например, адрес переменной flag обозначается символами & flag. Для массивов и строк указывать символ & не обязательно. Замечание: При использовании функции scanf() в управляющей строке нежелательно использовать никаких лишних символов (даже пробелов), кроме спецификаций. Нельзя использовать и специальные символы. Примеры: 1) Ввести с клавиатуры переменные population и age типов длинное целое и вещественное число: scanf(“%ld%f”, & population, & age); 2) Ввести с клавиатуры целую переменную kod в шестнадцатеричном формате, строку name и вещественную переменную двойной точности precision: scanf(“%x%s%lf”, & kod, name, & precision); При вводе нескольких переменных разделителями между ними являются клавиши пробела, табуляции и ENTER. Пример 3.1 Рассмотрим программу, в которой вычисляется значение функции y=sin(x) для двух введенных с клавиатуры значений аргумента. При этом вывод на экран необходимо выполнить в виде следующей таблицы (ширина поля каждой переменной 8 позиций, точность – 4 знака):
Листинг 3.1 /* Программа вычисления функции y=sin(x) */ #include < stdio.h> #include < math.h> void main() { float x1, x2, y1, y2;
printf(“введите два значения аргумента: \n”); scanf(“%f%f”, & x1, & x2); printf(“\n| x | y |”); printf(“\n|––––––––|––––––––|\n”); y1=sin(x1); y2=sin(x2); printf(“|%8.4f|%8.4f|\n”, x1, y1); printf(“|%8.4f|%8.4f|\n”, x2, y2); } Функции консольного ввода-вывода cscanf() и cprintf() Консольная библиотека < conio.h> имеет очень похожие функции ввода-вывода. Отличие состоит в том, что с помощью консольных функций можно задать атрибуты вводимых/выводимых символов: задать положение курсора, изменить цвета фона и символов. Поэтому, например, не имеет смысла использовать некоторые специальные символы при выводе данных на экран (перевод строки, горизонтальная табуляция и т.п.). Синтаксис функций cscanf() и cprintf() идентичен аналогичным функциям библиотеки < stdio.h>.
|