Содержание
- 2. Ця функція може бути описана, як абстрактна операція сортування даних, що може бути частиною вирішення деякої
- 3. Функції Функціями називають самостійні, логічно завершені фрагменти програм, що мають власне ім’я та призначені для виконання
- 4. Всі функції, включаючи main ( ), рівноправні. Особливість main ( ) у тому, що вона розпочинає
- 5. Структура функцій Синтаксис опису функції : тип_поверт_значення ім'я_функції ([список_аргументів]) { оголошення внутрішніх змінних оператори тіла функції
- 6. Після імені функції в круглих дужках оголошується список параметрів - їх називають формальними параметрами або аргументами
- 7. Тіло функції реалізує дії, які повинна виконати ця функція. Внутрішні змінні, що необхідні для роботи функції,
- 8. Виклик функції. Прототипи функцій. Оператори тіла функції виконуються тоді, коли здійснюється звертання до функції. Виклик функції:
- 9. Функції типу void (ті, що не повертають значення), подібні до процедур Паскаля. Оператор func(); виконує функцію
- 10. Звернемо увагу на те, що текст програми починається з оголошення прототипів функцій - схематичних записів, що
- 11. Приклад програми, що розв'язує тривіальне завдання - обчислює корені звичайного квадратного рівняння: #include #include #include #include
- 12. if ((A==0) && (B!=0)) { X1 = (-C)/B; printf("\nRoot: %f",X1); exit(0); } D = B*B -
- 14. Скачать презентацию
Слайд 2 Ця функція може бути описана, як абстрактна операція сортування даних, що
Ця функція може бути описана, як абстрактна операція сортування даних, що
Функції мають параметри, тому їх операції узагальнені для використання будь-якими фактичними аргументами відповідного типу. Що є вхідними даними для функції ? Вхідними даними для неї є аргументи та глобальні структури даних, що використовуються функцією. Вихідними даними є ті значення, які функція повертає, а також зміни глобальних даних, модифікації. Будь-яка програма на мові С складається з функцій, причому одна з яких обов'язково повинна мати ім'я main().
Слайд 3Функції
Функціями називають самостійні, логічно завершені
фрагменти програм, що мають власне ім’я та
Функції
Функціями називають самостійні, логічно завершені
фрагменти програм, що мають власне ім’я та
призначені для виконання заданих дій, останньою з
яких може бути повернення деякого значення. Функції
формують окремий тип даних мови С. Використання
функцій дає змогу структуризувати програму (поділити
складні процеси на окремі частини, виділити основні
кроки в алгоритмі, а потім розкрити деталі реалізації в
окремих функціях), уникнути багаторазового запису
одних і тих самих дій та скористатись раніше
зробленим, уможливлює розпаралелення процесу
програмування, спрощує пошук помилок та внесення
доповнень, робить програму лаконічною.
Слайд 4 Всі функції, включаючи main ( ), рівноправні.
Особливість main ( )
Всі функції, включаючи main ( ), рівноправні.
Особливість main ( )
роботу програми, а її завершення означає кінець
виконання усієї програми. Саме в функції main ( )
найчастіше вказують основні кроки алгоритму. Кожна
функція С-програми записується окремо, вкладати
функції одна в одну не можна.
Функцію програми ( або групу функцій ) можна
відкомпілювати автономно і зберігати в окремому
obj-файлі. Об’єктні коди долучаються до складу
виконавчого коду програми на етапі редагування
зв’язків (компонування).
Слайд 5Структура функцій
Синтаксис опису функції :
тип_поверт_значення ім'я_функції ([список_аргументів])
{
оголошення внутрішніх змінних
оператори
Структура функцій
Синтаксис опису функції :
тип_поверт_значення ім'я_функції ([список_аргументів])
{
оголошення внутрішніх змінних
оператори
У заголовку вказується тип значення, яке повертає функція в
точку її виклику після завершення виконання. Тип значення,
яке повертається функцією може бути будь-яким, за
виключенням масиву та функції (але може бути покажчиком на
масив чи функцію). Якщо функція не повертає значення, то
вказується тип void.
Ім’я функції формується за правилами запису ідентифікаторів.
Слайд 6 Після імені функції в круглих дужках оголошується список
параметрів - їх
Після імені функції в круглих дужках оголошується список
параметрів - їх
аргументами функції. Кожен з параметрів оголошується у
списку із окремим зазначенням типу. Функція може мати
порожній список, але круглі дужки ( ) вказуються обов’язково.
/* піднесення дійсного числа до цілого степеня */
double Pow (double base, int n)
{
double prod;
for ( prod = 1.0; n>0; n-- )
prod *= base;
return prod;
}
Слайд 7 Тіло функції реалізує дії, які повинна виконати ця функція.
Внутрішні змінні,
Тіло функції реалізує дії, які повинна виконати ця функція.
Внутрішні змінні,
локальними змінними. Вони оголошуються на початку тіла
функції перед першим оператором. В прикладі – це змінна prod
Областю дії внутрішніх змінних функції та її формальних
параметрів є область тіла даної функції. Такі змінні
створюються на час виконання функції і стають невизначеними
після її завершення.
Функція завершує роботу, коли виконано всі оператори її тіла
або коли зустрінеться оператор return . Якщо функція повертає
певне значення ( її тип відмінний від void ), то це значення має
бути передане через вираз, записаний в операторі return.
Значення виразу заноситься у буфер обміну, звідки його можна
отримати у тій точці програми, з якої викликають функцію.
Слайд 8Виклик функції. Прототипи функцій.
Оператори тіла функції виконуються тоді, коли здійснюється
звертання
Виклик функції. Прототипи функцій.
Оператори тіла функції виконуються тоді, коли здійснюється
звертання
ім’я_функції ( список фактичних параметрів )
тут список фактичних параметрів – це послідовність виразів,
кожен з яких задає значення відповідного формального параметра
Значення, повернене функцією, можна використовувати у всіх
виразах як звичайний операнд, тип якого збігається з типом
значення функції.
Приклад звертання до функції Pow ( ) , оголошеної вище:
r = ( Pow (x, 3) – Pow (y, 4) )/2
Дозволяється автономно (через окремий оператор) викликати
функції, які повертають певне значення. У цьому випадку
значення, яке повертає функція, ігнорується. Приклад – виклик
бібліотечної функції printf (), яка повертає значення типу int.
Слайд 9 Функції типу void (ті, що не повертають значення), подібні до процедур Паскаля.
Функції типу void (ті, що не повертають значення), подібні до процедур Паскаля.
void func() , тобто передасть керування функції, доки не виконаються усі її оператори. Коли функція поверне керування в основну програму, тобто завершить свою роботу, програма продовжить своє виконання з того місця, де розташовується наступний оператор за оператором func().
#include
Слайд 10 Звернемо увагу на те, що текст програми починається з оголошення прототипів
Звернемо увагу на те, що текст програми починається з оголошення прототипів
Слайд 11 Приклад програми, що розв'язує тривіальне завдання - обчислює корені звичайного квадратного рівняння:
Приклад програми, що розв'язує тривіальне завдання - обчислює корені звичайного квадратного рівняння:
#include
/*функція запуску основних обчислень*/ void Run() { float D; float X1, X2;
Слайд 12
if ((A==0) && (B!=0))
{
X1 = (-C)/B;
printf("\nRoot: %f",X1);
exit(0);
}
D = B*B - 4*A*C;
if (D<0)
if ((A==0) && (B!=0))
{
X1 = (-C)/B;
printf("\nRoot: %f",X1);
exit(0);
}
D = B*B - 4*A*C;
if (D<0)