Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Назначение и описание функции






Функция позволяет ввести информация с клавиатуры. Функция определяется в библиотеке < 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 знака):

x y
xx.xxxx xx.xxxx
xx.xxxx xx.xxxx

Листинг 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>.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.005 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал