Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
С++ ЕНФ / мои отчёты / Отчёт по Лабе №2.doc
Скачиваний:
16
Добавлен:
25.05.2014
Размер:
96.26 Кб
Скачать

Федеральное агентство по образованию Российской Федерации

Государственное образовательное учреждение высшего профессионального образования

«Уфимский Государственный Авиационный Технический Университет»

Кафедра ВВТиС

Отчет по лабораторной работе №2

Функции в С++

Выполнил: студент гр. ПМ-125

Марьин Д.Ф.

Проверил: ст. преподаватель каф. ВВТиС

Насибуллаева Э.Ш.

Уфа 2005

Содержание

Цель работы 3

1.ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 4

1.1.Основные понятия о функциях 4

1.1.1.Определение функций 4

1.1.2.Описание функции 4

1.1.3.Вызов функции 5

1.1.4.Передача параметров 5

1.2.Inline функция 5

1.3.Рекурсивные функции 6

2.ПРАКТИЧЕСКАЯ ЧАСТЬ 6

2.1.Описание программы 2LB1.cpp 6

2.2.Описание программы 2LB2.cpp 6

2.3.Описание программы LABA1_3.cpp 6

ЗАКЛЮЧЕНИЕ 7

Список литературы 8

ПРИЛОЖЕНИЕ А 9

Цель работы

  • Ознакомиться со способами объявления функции

  • Рассмотреть большинство типов используемых функций и разобраться в преимуществах использования каждого вида

  • Разобраться, в каких ситуациях лучше использовать inlineфункцию

  • Понять разницу в использовании рекурсивной функции и функции с итерационным циклом

  • Научиться рационально создавать функции с целью облегчения в написании алгоритма и повышения быстродействия вычислений

Задание к лабораторной работе №2:

1. Написать программу, которая выводит число a, принадлежащееN, в степениb, принадлежащейR. Программа должна создать две функции:1-я функция, которая находит произведение 2-х чисел, располагается после функции main; 2-я функция, которая выводит результат на экран, располагается до функции main.

2. Написать программу, вычисляющую периметр параллелограмма с помощью inline функции.

3. Написать программу, вычисляющую частичную сумму ряда .

Расчет должен производиться 2-мя способами:

1) с помощью рекурсивной функции ;

2) с помощью функции, содержащей итерационный цикл.

Во всех программах должна быть предусмотрена защита ввода неправильных данных.

1.Теоретическая часть

1.1.Основные понятия о функциях

1.1.1.Определение функций

В соответствии с синтаксисом в языке С определены три производных типа: массив, указатель и функция.

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

<тип> <имя_функции> (<спецификация параметров>)

<тело функции>

Здесь <тип> либо void (для функций, не возвращающих значения), либо обозначение типа возвращаемого функцией значения.

<имя_функции>- либо main для основной (главной) функции программы, либо произвольно выбираемое программистом имя (идентификатор).

<спецификация параметров> - это либо пусто, либо список формальных параметров, каждый элемент которого имеет вид:

<обозначение_типа> <имя_параметра>

<тело функции> - это часть определения функции, представляющая программный блок, т.е. ограниченный фигурными скобками фрагмент текста на языке С, размещенный непосредственно вслед за заголовком функции. Особенность языка С состоит в невозможности внутри тела функции определить другую функцию: определения функций не могут быть вложенными.

Для завершения (прерывания) работы функции служит оператор return. Существует две формы этого оператора:

return; // Возврат без передачи результата

return <выражение>; // Возврат значения

Первая форма используется для функций, перед именем которой в определении указан тип void. Для функций этого типа оператор return можно в тексте программы не писать вовсе - компилятор встроит его автоматически перед закрывающей фигурной скобкой тела функции.

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

Соседние файлы в папке мои отчёты