
- •Ф.Б. Рогальський, і.А. Лур'є, н.В. Корніловська
- •Ф.Б. Рогальський, і.А. Лур'є, н.В. Корніловська
- •Передмова
- •Лабораторна робота №1 Інтегроване середовище програмування системи
- •Теоретична частина
- •Компоненти інтегрованого середовища
- •Головне меню
- •Системне меню
- •Clear (Стерти) – видаляє обраний фрагмент тексту, але не заносить його в текстовий буфер.
- •Replace (Замінити) – відображає блок діалогу, що дозволяє вводити шуканий текст і текст, на який його варто замінити.
- •Size/Move (Змінити розмір/Перемістити) – використовується для того, щоб змінити розмір чи місце розташування активного вікна.
- •Створення першої програми
- •Контрольні питання
- •Мова програмування Сі Використовувані символи
- •Константи
- •Приклади цілих констант
- •Ідентифікатор
- •Використання коментарів у тексті програми
- •Типи даних та їх оголошення
- •Категорії типів даних Ключові слова для визначення основних типів даних
- •Стандартні функції
- •Специфікатори формату
- •Команди формату
- •Стандартні заголовні файли
- •Пріоритети операцій і порядок обчислень
- •Контрольні питання
- •Варіанти завдань роботи
- •Лабораторна робота № 3 Оператори управління
- •Теоретична частина
- •Умовний оператор if
- •If (вираз) оператор-1; [else оператор-2;]
- •Оператор switch
- •Оператор break
- •Оператор for
- •Оператор goto
- •Зразок виконання завдання
- •Контрольні питання
- •Оператор switch.
- •Оператор break.
- •Варіанти завдань роботи
- •Лабораторна робота № 4
- •Оператор do while
- •Оператор continue
- •Оператор return
- •Контрольні питання
- •Варіанти завдань роботи
- •Лабораторна робота № 5 Функції і прототипи функцій
- •Теоретична частина
- •Прототипи функцій
- •Метод половинного ділення
- •Зразок виконання завдання
- •Контрольні питання
- •Варіанти завдань роботи
- •Лабораторна робота № 6 Алгоритми обробки одновимірних масивів
- •Теоретична частина
- •Контрольні запитання
- •Варіанти завдань роботи
- •Лабораторна робота №7 Сортування даних
- •Теоретична частина
- •Обмінне сортування
- •Інші методи сортування
- •Контрольні питання
- •Варіанти завдань роботи
- •Лабораторна робота № 8 Алгоритми обробки двовимірних масивів
- •Теоретична частина
- •Перетворення одновимірних масивів у двовимірні та навпаки
- •Контрольні питання
- •Варіанти завдань роботи
- •Лабораторна робота n 9 Прийоми програмування з використанням покажчиків.
- •Теоретична частина
- •Зв’язок між покажчиками та масивами
- •Покажчики на багатовимірні масиви.
- •Операції з покажчиками
- •Приклад:
- •Масиви покажчиків
- •Контрольні питання
- •Методичні вказівки
- •Приклад виконання завдання по обробці рядків
- •Приклад виконання програми
- •Варіанти завдань роботи
- •Лабораторна робота n10 Директиви препроцесора.
- •Теоретична частина Препроцесор мови с
- •Директива #еrrоr
- •Директива #include
- •Директиви умовної компіляції
- •Визначені макроси.
- •Контрольні питання
- •Варіанти завдань роботи.
- •Лабораторна робота 11 Друк кодової таблиці.
- •Теоретична частина.
- •Особливості типу char
- •Файл ctype.H
- •Рекомендації зо вибору імен змінних і функцій
- •Контрольні питання
- •Додатки
- •Методика виконання роботи
- •Варіанти завдань роботи
- •Вид таблиці символів:
- •Лабораторна робота 12 Рядки. Потокове введення/виведення у мові с.
- •Теоретична частина
- •Функції для роботи з рядками
- •Рядки і числові типи даних
- •Робота з файлами
- •Контрольні питання.
- •Додатки
- •Варіанти завдань роботи .
- •Лабораторна робота 13
- •Теоретична частина.
- •Контрольні питання
- •Варіанти завдань роботи.
- •Лабораторна робота 14
- •Теоретична частина
- •Ключі доступу
- •Просте спадкування
- •Віртуальні методи
- •Механізм пізнього зв'язування
- •Абстрактні класи
- •Множинне спадкування
- •Відмінності структур і об'єднань від класів.
- •Контрольні питання.
- •Варіанти завдань роботи.
- •Література
- •Рогальський Франц Борисович
Оператор break
Оператор break забезпечує припинення виконання операторів switch, do, for, while. Після виконання оператора break керування передається оператору, що розташований за перерваним.
Оператор for
Оператор for - це найбільш загальний спосіб організації циклу. Він має наступний формат:
for (вираз 1; вираз 2; вираз 3) тіло
Вираз 1 звичайно використовується для встановлення початкового значення змінних, керуючих циклом. Вираз 2 - це вираз, що визначає умову, при якої тіло циклу буде виконуватися. Вираз 3 визначає зміну перемінних, керуючих циклом після кожного виконання тіла циклу.
Схема виконання оператора for:
Обчислюється значення виразу 1.
Обчислюється значення виразу 2.
Якщо значення виразу 2 відмінно від нуля (істина), виконується тіло циклу, обчислюється значення виразу 3 і здійснюється перехід до пункту 2, якщо значення виразу 2 дорівнює нулю (неправда), то керування передається на оператор, що розташований за оператором for.
Істотно те, що перевірка умови завжди виконується на початку циклу. Це значить, що тіло циклу може жодного разу не виконатися, якщо умова виконання відразу буде помилковою.
Приклад:
int main()
{ int top, bot;
char string[100], temp;
for ( top=0, bot=100 ; top < bot ; top++, bot--)
{ temp=string[top];
string[bot]=temp;
}
return 0;
}
У цьому прикладі, що реалізує запис рядка символів у зворотному порядку, для керування циклом використовуються дві перемінні top і bot. Відзначимо, що на місці вираз 1 і вираз 3 тут використовуються кілька виразів, записаних через кому, і виконуваних послідовно.
Іншим варіантом використання оператора for є нескінченний цикл. Для організації такого циклу можна використовувати порожній умовний вираз, а для виходу з циклу звичайно використовують додаткову умову та оператор break.
Приклад:
for (;;)
{ ...
... break;
...
}
Тому що відповідно до синтаксису мови СІ оператор може бути порожнім, тіло оператора for також може бути порожнім. Така форма оператора може бути використана для організації пошуку.
Оператор goto
Використання оператора безумовного переходу goto у практиці програмування мовою СІ настійно не рекомендується, тому що він утрудняє розуміння програм і можливість їхніх модифікацій.
Формат цього оператора наступний:
goto ім'я - мітки;
...
ім'я - мітки: оператор;
Оператор goto передає керування на оператор, позначений міткою ім'я - мітки. Позначений оператор повинний знаходитися в тій же функції, що й оператор goto, а використовувана мітка повинна бути унікальною, тобто одне ім'я - мітки не може бути використане для різних операторів програми. Ім'я - мітки - це ідентифікатор.
Будь-який оператор у складному операторі може мати свою мітку. Використовуючи оператор goto, можна передавати керування всередину складного оператора. Але потрібно бути обережним при вході в складний оператор, що містить оголошення змінних з ініціалізацією, тому що оголошення розташовуються перед виконуваними операторами і значення оголошених змінних при такому переході будуть не визначені.