
- •2. Функції користувача
- •3. Оператори умови і їх використання
- •If (вираз) оператор; else оператор;
- •4. Типи даних: масиви, рядки.
- •6. Процедури і функції роботи з файлами.
- •7. Основні поняття об’єктно-орієнтованого програмування.
- •8. Поняття про наслідування та інкапсуляцію.
- •9. Механізми підтримки поліморфізму
4. Типи даних: масиви, рядки.
Масив – це сукупність змінних, які мають однаковий тип і обєднюються під одним імям. Масиви можуть бути одновимірними і багатовимірними. Найбільш поширеним масивом є рядок, який закінчується нульовим байтом.
Оголошення одновимірного масиву: тип імя_змінної[розмір];
Тип – оголошує базовий тип масиву, його елементів; розмір – визначає, скільки елементів є в масиві.
Доступ до елемента масиву: імя_масиву [індекс елемента];
Індекс першого елемента будь-якого масиву – 0.
Розмір одновимірного масиву в байтах обчислюється за формулою:
кількість_байтів=sizeof(базовий_тип)*кількість_елементів.
Створення вказівника на масив:
int sample[10];
int *p;
int sample[10];
p=sample;
Рядки, які закінчуються нульовим байтом. Оголошуючи масив символів, потрібно зарезервувати одну комірку для нульового байту, тобто вказати розмір на одиницю більший.
char str[11];
Функції для роботи з рядками:
strcpy(s1,s2) – копіює рядок s1 в рядок s2
strcat(s1,s2) – переписує рядок s2 в кінець рядка s1
strlen(s1) – обчислює довжину рядка s1
strcmp(s1,s2) – повертає 0, якщо s1 і s2 співпадають, негативне значення, якщо s1< s2, і позитивне, якщо s1> s2
strchr(s1,ch) – повертає вказівник на позицію першого входження символу ch у рядок s1
strstr(s1,s2) – повертає вказівник на позицію першого входження рядка s2 в рядок s1
Оголошення двохвимірного масиву:
тип імя_масиву[кількість_рядків][кількість_стовпців]
Двохвимірний масив зберігається вигляді матриці.
Розмір двохвимірного масиву в байтах обчислюється за формулою:
кількість_байтів=sizeof(базовий_тип)*кількість_рядків*кількість_стовпців.
Масиви рядків. Максимальне значення лівого індексу – кількість рядків, правого індексу – максимальна довжина кожного рядка. В кінці кожного рядка – нульовий байт \0.
Ініціалізація масивів:
тип_масиву імя_масиву[розмір1]…[розмірN]={список_значень}
Список_значень представляє собою список констант, розділених комами.
Приклади:
int i[5]={1,2,3,4,5};
char named[12]=”Я люблю С++”;
char str[2]={‘A’,’b’,’\0’);
int sqrs[3][2]={
1, 1,
2, 4,
3, 9};
Або, використовуючи спосіб субагрегатного групування:
int sqrs[3][2]={
{1, 1},
{2, 4},
{3, 9}};
Безрозмірний масив: char mas[];
5. Оператори циклу та їх використання.
У мові C/C + +, як і у всіх інших сучасних мовах програмуванняня, оператора циклу призначені для виконання повторюваних інструкцій. Ця умова може бути як заданою раніше (у циклі for), так і змінюватись під час виконання циклу (в операторах while і do-while).
Цикл for
Загальний вигляд оператора for такий.
for (ініціалізація; умова;збільшити)
Цикл for має багато варіантів. Однак найбільш загальна форма цього оператора працює таким чином. Спочатку виконується ініціалізація (initialization) - оператор присвоювання, який задає початкове значення лічильника циклу. Потім перевіряється умова (condition), що представляє собою умовний вираз. Цикл виконується до тих пір, поки значення цього виразу залишається істинним. Збільшити (increment) змінює значення лічильника циклу при черговому його виконанні. Ці розділи оператора відокремлюються один від одного крапкою з комою. Як тільки умова циклу стане хибною, програма припинить його виконання і перейде до наступного оператора.
Приклад оператора for виводить на екран числа від 1 до 20;
for (int i=1; i<=20; i++) {дія}
Цікава особливість циклу for полягає в тому, що його розділи можна пропускати. Кожен з його розділів є необов'язковим.
Приклад нескінченного циклу: for ( ; ; ) {дія}
Цикл while
Оператор циклу while має наступний синтаксис:
while (умова) оператор
Тут оператор може бути порожнім, окремим оператором або блоком операторів. Умова може задаватися будь-яким виразом. Умова циклу вважається істинним, якщо значення цього виразу не дорівнює нулю. Як тільки умова циклу стає хибною, програма передає управління оператору, що стоїть відразу після оператора while.
int i = 0;
while(i<20){ дії i++ }
Цикл do while
На відміну від операторів for і while, які перевіряють умова на початку циклу, оператор do-while робить це в кінці. Іншими словами, цикл do-while виконується принаймні один раз. Загальний вид оператора do-while такий, do {оператор;
} Whilе (умова)
Якщо тіло циклу складається лише з одного оператора, фігурні дужки не обов'язкові, хоча вони роблять цей цикл зрозуміліше (програмісту, але не компілятору). Цикл do-while повторюється до тих пір, поки умова не стане хибною.
Приклад оператора, який до заданого масиву чисел додає число 5;
i=0; do{ mas[i] = mas[i]+5;
i++; }while(i<5);
Оператори безумовного переходу
У мові C / C + + передбачено чотири оператора безумовного переходу: return, goto, break, continue. Оператори return і goto можна застосовувати в будь-якому місці програми, в той час як оператори break та continue пов'язані з операторами циклів. Крім того, оператор break можна застосовувати всередині оператора switch.
Оператор return. Цей оператор використовується для повернення управління з функції. Він виконує повернення в точку виклику функції.
Оператор return має наступний вигляд.
return вираз
Вираз вказується лише тоді, коли у відповідності зі своїм оголошенням функція повертає якесь значення. У цьому випадку результатом функції є значення даного виразу. Усередині функції можна використовувати скільки завгодно операторів return. Однак функція припинить свої обчислення, як тільки досягне першого оператора return.
Оператор goto.Оскільки в мові C / C + + існує багатий вибір керуючих структур на основі операторів break і continue, в операторі goto немає особливої необхідності. Для оператора goto необхідна мітка (label), що представляє собою ідентифікатор з двокрапкою. Мітка повинна знаходитися в тій же функції, що і оператор goto, - перескакувати з функції у функцію не можна. Оператор goto має наступний вигляд.
goto мітка:
мітка.
Мітка може знаходитися як до, так і після оператора goto.
Оператор break
Оператор break застосовується у двох ситуаціях. По-перше, він використовується для припинення виконання розділу case всередині оператора switch. По-друге, з допомогою оператора break можна негайно вийти з циклу незалежно від того, якою є умови істинними чи хибними.
Якщо в циклі зустрічається оператор break, ітерації припиняються і програма відновлюється з оператора, наступного за оператором циклу.
Оператор continue
Оператор continue нагадує оператор break. Вони різняться тим, що оператор break припиняє виконання всього циклу, а оператор continue - лише його діючу ітерацію, викликаючи перехід до наступної ітерації і пропускаючи всі залишені оператори в тілі циклу. У циклі for оператор continue викликає перевірку умови і приріст лічильника циклу. У циклах while і do-while оператор continue передає управління операторам, що входять в умову циклу.