Студопедия Главная Случайная страница Обратная связь

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

Вызов функции





Для обращения к функции используется имя функции.

Формат вызова:

Имя_функции (список),

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

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

Выполнение вызова функции происходит следующим образом.

Вычисляются выражения в списке фактических аргументов. Затем, если известен прототип функции, тип полученного фактического параметра сравнивается с типом соответствующего формального параметра. Если они не совпадают, то либо производится преобразование типов, либо формируется сообщение об ошибке. Число выражений в списке фактических аргументов должно совпадать с числом формальных параметров, если только функция не имеет переменного числа параметров. В последнем случае проверке подлежат только обязательные параметры. Если в прототипе функции указано, что ей не требуются параметры, а при вызове они указаны, формируется сообщение об ошибке. Происходит присваивание значений или адресов фактических аргументов соответствующим формальным параметрам. Управление передается на первый оператор функции. Выполняются действия, указанные в теле функции. Выполнение оператораreturn в теле функции возвращает управление и вычисленное значение в вызывающую функцию. При отсутствии оператора return управление возвращается после выполнения последнего оператора тела функции, а возвращаемое значение не определено.

Пример программы

Найти корни уравнения x = sin2 x / 4 + 0,27 методом итераций с точностью .

Расчетная формула x 1 = sin2 x 0 / 4 + 0,27, где условие нахождения искомого корня | x 1x 0| <  – x 0  начальное значение корня уравнения (обычно принимается равным нулю), x 1  значение корня уравнения на следующей итерации,  заданная точность вычисления корня (например, 0.001).

В программе используется старый стиль определения функции:

#include <stdio.h>

#include <math.h> /*Подключение стандартных библиотек*/

#define EPS 0.001 /*Задание точности вычисления корня*/

float root(x, E) /*Заголовок функции с именем root*/

float x,E; /*Описание аргументов функции*/

{ /*Тело функции*/

float x1;

for (x1=pow(sin(x),2)*.25+.27;

fabs (x1−x)>E;

x=x1,

x1=pow(sin(x),2)*.25+.27);

return (x1);

} /*Завершение описания функции root*/

int main()

{

float x0;

printf ("\n Введите значение x0");

scanf ("%f",&x0);

printf ("\n Корень уравнения %f", root(x0,EPS));

//Вызов функции root()

return 0;

}

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

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







Дата добавления: 2015-04-19; просмотров: 419. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Именные части речи, их общие и отличительные признаки Именные части речи в русском языке — это имя существительное, имя прилагательное, имя числительное, местоимение...

Интуитивное мышление Мышление — это пси­хический процесс, обеспечивающий познание сущности предме­тов и явлений и самого субъекта...

Объект, субъект, предмет, цели и задачи управления персоналом Социальная система организации делится на две основные подсистемы: управляющую и управляемую...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Методы прогнозирования национальной экономики, их особенности, классификация В настоящее время по оценке специалистов насчитывается свыше 150 различных методов прогнозирования, но на практике, в качестве основных используется около 20 методов...

Studopedia.info - Студопедия - 2014-2025 год . (0.013 сек.) русская версия | украинская версия