Практикум по информатике и информационным технологиям. I. Обработка данных на ПК
91 Описание функции содержит заголовок, за которым следует программ ный блок (тело функции ).Еслж функция имеет аргументы, то в ее заголовке должны быть объявлены переменные, принимающие их значения. Эти пере менные называются формальными параметрами. В заголовке функции опре деляется тип результата, возвращаемого функцией, имя функции иформаль- ные параметры (если они имеются). Список формальных параметров заклю чается в круглые скобки. В нем перечисляются типы параметров и их имена, разделенные запятыми. В теле функции задаются операторы, которые должны выполняться при активизации функции. Программный блок выделяется фигурными скоб ками и Приведем пример задания функции: doublemax(double х, double у) /* функция возвращает максимум из значений х и у */ { double m; if(х>=у) m=x; else m=y; returnx; } При вызове функции указывается имя функции и фактические пара метры. Функция может возвращать или не возвращать значение в вызвав шую ее программу. Если функция возвращает значение, то его тип указыва ется в описании функции непосредственно пред ее именем, а возвращаемое значение указывается после оператора return. Такие функции могут вызы ваться внутри операторов (например, в операторе присвоения "=") или как аргументы других функций. Если функция не возвращает значения, то в ка честве возвращаемого типа указывается void. Вызывается такая функция как обычный оператор. Вызов функции может включаться в выражения в качестве операнда. Когда выражение вычисляется, функция выполняется и значением операнда становится значение, возвращаемое функцией. Пример программы, осуществляющей вызов функции тах(у. void main(void) { double a, b, c; printf("Введите значения a и b: "); scanf("%lg %lg", & a/&b) r z = 1 + 5*max(a,b); printfC'c = %g", c) ; } 10.2.1. Параметры функции Параметры используются для передачи входных данных из вызываю щей программы в функцию и выходных данных из функции в вызывающую программу.
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY0OTYy