Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИСТ 1 курс экзамен лиманова по тп 1-24 вопрос.docx
Скачиваний:
194
Добавлен:
10.01.2016
Размер:
333.15 Кб
Скачать
  1. Область видимости и "время жизни" переменных. Использование статических переменных в функции. Привести примеры.

Время жизни – это время существования переменной во время работы программы.

Глобальные переменные – ее имя видно с момента объявления.

За пределами функций имена объявленных внутри нее переменных не видны, т.е. имя переменной нельзя использовать вне тела функции . Говорят что область видимости локальных переменных – тело функции.

Пример статических функции:

Double average(double data)

{ static double summa =0;// инициализация статических переменных при первом вызове.

Static int count=0;

Cout++;

Summa+=data;

Return summa/cout;// возврат нового среднего значения

}

Int main()

{ double data=1, middle;

While (data)

{

Cout<<”введите число:”;

Cin>>data;

Middle=average(data);//выражение очередного среднего

Cout<<”среднее значение:”<<middle<<endl;

  1. Передача параметров в функцию по ссылке. Привести примеры определения и вызова таких функций в С/C++.

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

     #include<iostream>      using namespace std;      void swap(int a, int b)      {          int t;          t=b;          b=a;          a=t;      }      int main()      {          int p=3,q=5;          swap(p,q);          cout<<p<<" "<<q<<endl;          return 0;      }

При вызове функции swap создаются новые переменные a и b, им присваиваются значения 3 и 5. Эти переменные никак не связаны с переменными p и q и их изменение не изменяет значения p иq. Такой способ передачи параметров называется передачей параметров по значению.

void swap(int & a, int & b)

Амперсанды перед именем переменной означают, что эта переменная является не локальной переменной, а ссылкой на переменную, указанную в качестве параметра при вызове функции. Теперь при вызове swap(p,q) переменные a и b являются синонимами для переменных p и q, и изменение их значений влечет изменение значений p и q. А вот вызывать функцию в видеswap(3,5) уже нельзя, поскольку 3 и 5 — это константы, и сделать переменные синонимами констант нельзя.

  1. Перегрузка функций. Пример реализации перегруженной функции.

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

Перегрузка функций позволяет вашим программам определять несколько функций с одним и тем же именем и типом возвращаемого значения. Например, следующая программа перегружает функцию с именемadd_values.

#include <iostream.h>

int add_values(int a,int b)

{ return(a + b); )

int add_values (int a, int b, int c)

( return(a + b + c); )

void main(void)

{ cout << «200 + 801 = » << add_values(200, 801) << endl; cout << «100 + 201 + 700 = » << add_values(100, 201, 700) << endl; }

Как видите, программа определяет две функции с именами add_valuesПервая функция складывает два значения типа int, в то время как вторая складывает три значения. 

  1. Одномерные массивы: объявление, инициализация, обработка, использование массивов в С/C++.

Массивы – это группа однородных данных, имеющих один и тот же тип и одно и тоже имя.

Объявление: ( тип_имя_кол-во. Элементов) int month [12] или double mas[32]

Инициализация: int mas[5]={1, 2, 3, 4, 5} или с клавиатуры. For(int i=0; i<12; ++i)

Cin>>mas[i]

Обработка: Получение суммы элементов массива

Поиск максимума, минимума и др. задаваемых значений.

Сортировка массива.

Выполнение однотипных действий над всеми элементами массива.

Использование: Массивы используются для обработки большого количества однотипных данных.

Соседние файлы в предмете Программирование на C++