Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
I_semestr.doc
Скачиваний:
6
Добавлен:
23.09.2019
Размер:
356.35 Кб
Скачать

2.2. Стандартная функция scanf

Предназначена для форматного ввода со стандартного устройства ввода stdin. Аргументы аналогичны аргументам printf. Но также есть существенное отличие:

  1. В форматной строке не должно быть ничего, кроме спецификаторов преобразования (ни пробелов, ни сообщений)

  2. Перед каждым аргументом, не являющимся строкой (адресом) ставится знак & и трактуется как вычисление адреса.

По правилам хорошего тона перед вводом с клавиатуры принято выводить приглашение ко вводу. Для функции важно, чтобы спецификаторы совпадали.

2.3. Стандартные математические функции

В любых арифметических выражениях можно использовать стандартные математические функции, применяя их к числовых типам. Для использования надо подключить файл math.h. Примеры функций:

sin(x)

cos(x)

tg(x)

asin

acos

atg

sinn

cosn

log – натуральный логарифм

log10 – десятичный логарифм

abs – модуль целого числа

fabs – модуль

pow(x,y) – степень x в степени y

exp(x) – экспонента

pow10(x) – 10 в степени x

2.4. Простейшие функции, определяемые программистом

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

заголовок_функции=тип имя_функции“(”[тип параметры{“,”тип параметры}]”)”

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

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

Описание функции (определение функции) – это совокупность заголовка и тела функции. Тело функции – это операторы, охваченные фигурными скобками и которые идут сразу за заголовком функции.

В стандартной библиотеке нет функции котангенс. Определим ее.

double Ctg(double x) //заголовок

{ return 1.0/tan(x);} //тело

Оператор return завершает работу функции, при этом, если функция предполагает возвращаемое значение, то оно вернет ее. Если функция не возвращает значений, то это обозначают словом void в соответствующем месте

void f(double x)

void f2(void)

int f3(void)

Функция должна быть известна компилятору к моменту ее вызова, но чтобы не задаваться вопросом в каком порядке записывать определения функции, часто используют прототипы функции, записанные до всех определений. Прототипов функции называют заголовок с ;. Определения функций должны быть вне всех блоков и функций, то есть в глобальной области видимости. Прототипы обычно располагаются там же.

Пользовательские функции обычно помещаются в том же файле, что и функция main, но это не обязательно.

3.5. Дополнительные арифметические операции

При разработке языка С, было замечено что распространены выражения типа a=a+1. В языке введены дополнительные операции ++ и - -

а=а+1 это а++

а=а-1 это а- -

Для дополнительных арифметических операций выделяют постфиксную и префиксную формы записи этих операций.

Постфиксная а++

Префиксную ++а

Постфиксная после вычисления дает значение до увеличения, а префиксная уже увеличенную.

int a=10

int b;

b=(a++)*2; // a=11 b=20

b=(++a)*3 //a=12 b=36

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]