Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРОГРАМУВАННЯ_FULL.docx
Скачиваний:
6
Добавлен:
18.09.2019
Размер:
112.09 Кб
Скачать

38. Поняття про локальні і глобальні величини на мові Сі

Змінні, які оголошуються усередині функції, називаються локальними. Їх можуть використовувати тільки настанови, що належать тілу цієї функції. Локальні змінні, оголошені в одній функції, невідомі жодним зовнішнім функціям.

У мові програмування C++ локальні змінні створюються під час виклику функції та руйнуються при виході з неї. Те саме можна сказати і про пам'ять, що виділяється для локальних змінних: під час виклику функції в неї записуються відповідні значення, а при виході з функції пам'ять звільняється. Це означає, що локальні змінні не підтримують своїх значень між викликами функцій.

У деяких літературних джерелах, присвячених мові програмування C++, локальна змінна називається динамічною або автоматичною змінною.

Щоб наділити змінну "всепрограмною" популярністю, її необхідно зробити глобальною. На відміну від локальних, глобальні змінні зберігають свої значення протягом всього часу життя (часу існування) програми. Щоби створити глобальну змінну, її необхідно оголосити поза всіма функціями. Доступ до глобальної змінної можна отримати з будь-якої функції.

#include <iostream.h> // Потокове введення-виведення

void Fun1(); // Попереднє оголошення прототипу функції Fun1()

void Fun2(); // Попереднє оголошення прототипу функції Fun2()

int pm; // Це глобальна змінна.

int main()

{

int i; // Це локальна змінна.

for(i=0; i<10; i++) {

pm = i * 2;

……………………

}

39. Звернення до функцій на мові Сі

Формат звернення до функції (виклику функції) традиційний:      імя_функциі (список_фактичних_праметрів)     Проте в Сі звернення до функції має своєрідне трактування: звернення до функції - це вираз. У цьому виразі круглі дужки грають роль знака операції, для якої функція і фактичні параметри (аргументи) є операндами. Пріоритет операції "дужки" найвищий, тому обчислення функції у виразах виробляється раніше від інших операцій.     Між формальними і фактичними параметрами при виклику функції повинні дотримуватися правила відповідності за послідовності і за типами. Фактичний параметр - це вираз того ж типу, що й у відповідного йому формального параметра.Стандарт мови Сі допускає автоматичне перетворення значень фактичних параметрів до типу формальних параметрів.     Необхідно засвоїти ще один найважливіший принцип, що діє в Сі: передача параметрів при виклику функції відбувається тільки за значенням. У Сі допустимі тільки параметри-значення. Тому виконання функції не може змінити значення змінних, вказаних в якості фактичних параметрів.

40. Поняття та робота з масивами на мові Сі

В програмуванні масив — одна з найпростіших структур даних, сукупність елементів переважно одного типу даних, впорядкованих за індексами, які зазвичай репрезентовані натуральними числами, що визначають положення елемента в масиві.

Масив може бути одновимірним (вектором), та багатовимірним (наприклад, двовимірною таблицею), тобто таким, де індексом є не одне число, а кортеж (сукупність) з декількох чисел, кількість яких співпадає з розмірністю масива.

В переважній більшості мов програмування масив є стандартною вбудованою структурою даних.

Масив — це скінчений набір елементів одного (базового) типу, які зберігаються в послідовно розташованих комірках оперативної пам’яті і мають спільну назву.

Розмір (кількість елементів) масиву найчастіше задають у вигляді діапазону або назви деякого перерахованого типу даних.

Кожен елемент масиву харатеризується іменем та номером (індесом).

Оголошення масиву:

тип змінна[кількість]

double a[100] – масив із 100 елементів дійсного типу

int b[100] – масив із 100 цілих чисел

char c[100] – масив із шести символів

Кожен елемент масиву може бути застосованний як однотипна проста величина. Для

цього потрібно вказати імя та [№]. № завжди починається з 0.

Звернутись до елементів масиву можна двома способами: за допомогою імені масиву або використовуючи вказівники.

Проініціалізувати масив можна одним із способів:

використовуючи принцип замовчування (за замовчуванням всім елементам масиву надається значення 0)

безпосередньо під час його оголошення

int stud[]={2, 4, 3, 2, 6};

float rist[]={12.5, 23, 78.3, 5.8, 6.9}

char alf=”Абетка” або char alf={‘А’, ‘б’, ‘е’, ‘т’, ‘к’, ‘а’}

застосовуючи команду присвоєння (ris[4]=5.8)

під час введення даних з клавіатури

Типова програма вводу елементів масиву:

#include <iostream.h>

#include <conio.h>

# defin n 100

void main() {

double a[n] int i,m

do{

cout <<”Кількість елементів=”; cin >>m;

} while (m>n||m<1)

for (i=o;i<m;i++){

cout <<”a[”<<i<<”]”; cin >>a[i];

} for (i=o;i<m;i++){

cout <<”a[”<<i<<”]=”; cout<<a[i]<<endl;

} getch();

}