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

Предисловие

Учебно-методическое пособие предназначено для продолжения изучения программирования на языке С++ студентами 1 курса заочного отделения механико-математического факультета. В пособии рассматривается теория и практика написания функций, организация работы с одномерными и двумерными массивами, использование массивов в качестве параметров функций, а также приведены примеры готовых к выполнению программ для закрепления лекционного курса "Методы программирования и информатика".

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

4. Функции

Функция - часть программы, выполняющая определенную задачу и возвращающая некоторое значение. В простейшем случае программа состоит из одной функции, которая должна называться main. Помимо функции main в программе могут быть и другие функции. Каждая функция имеет свое уникальное имя.

Различают два вида функций: определяемые пользователем и встроенные, являющиеся составной частью компилятора.

Любая функция пользователя должна быть описана в программе следующим образом:

ТипВозвращаемогоЗначения ИмяФункции (СписокФормальныхПараметров)

{

ТелоФункции

}

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

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

Функция может возвращать значение. ТипВозвращаемогоЗначения может быть опущен, тогда по умолчанию предполагается тип int. Если функция не возвращает никакого значения, то тип возвращаемого значения должен быть void. Тип void обычно называют пустым типом.

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

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

Например, описание функции

int MyFunction ( int x, float y )

{...........}

означает, что функция MyFunction получает два значения в качестве параметров: целочисленное и вещественное и возвращает целочисленное значение.

Функция может быть вызвана из функции main или из любой другой функции и даже из самой себя (рекурсивная функция). По завершению работы вызванной функции выполнение программы возобновляется со строки, следующей после вызова функции.

Вызов функции имеет вид:

ИмяФункции (СписокАргументов)

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

int z = MyFunction(4, 3.14);

При данном обращении к функции MyFunction переменные x и y инициализируются значениями 4 и 3.14 соответственно, а по окончании работы функция MyFunction возвращает в точку вызова значение, которым инициализируется целочисленная переменная z.

Тело функции представляет собой объявления переменных, констант и операторы. Тело функции записывается в фигурных скобках. Именно эти операторы выполняются при вызове функции. В теле функции разрешены любые объявления и операторы, которые допустимы в языке С++. В теле функции нельзя объявить другую функцию.