- •2. Основні елементи мови с
- •3.1 Алфавіт мови програмування
- •3.2Лексеми
- •3.3Ключові слова
- •3.4Ідентифікатори
- •3.5 Класифікація типів даних
- •3.6 Літерали
- •3.7 Оператори
- •3.8 Коментарі
- •3.9 Директиви препроцесора
- •3.10 Організація програми
- •3. Операції та вирази
- •4.1 Загальні відомості
- •4.2 Арифметичні операції
- •4.3 Операції приведення типів
- •(Тип) ідентифікатор,
- •4.4 Операції присвоєння
- •4.5 Операції інкремента і декремента
- •4.6 Операції порівняння
- •4.7 Операції зсуву
- •4.8 Порозрядні операції
- •4.9 Логічні операції
- •4.10 Операція sizeof
- •Sizeof ( Вираз ),
- •4.11 Операція послідовного обчислення
- •4.12 Операція умови (?:)
- •Операнд-1 ? Операнд-2 : Операнд-3
- •4.13 Адресні операції
- •Тип * ім'я_покажчика;
- •4. Прості типи даних
- •5.1 Оголошення змінних
- •[ Модифікатори ] тип ім’я_змінної;
- •5.2 Час існування та область видимості змінних
- •5.3 Цілі типи даних
- •5.4 Дійсні типи даних
- •5. Оператори керування
- •5.1 Оператор розгалуження if
- •If ( Вираз ) true-оператор;
- •5.2 Оператор розгалуження if-else
- •If ( Вираз ) true-оператор; else false-оператор;
- •5.3 Оператор множинного розгалуження switch
- •5.4 Оператор циклу for
- •For ( Вираз 1 ; Вираз 2 ; Вираз 3 ) тіло циклу
- •5.5 Оператор циклу while
- •While ( Вираз ) тіло циклу
- •5.6 Оператор циклу do while
- •Тіло циклу while ( Вираз ) ;
- •5.7 Оператор break
- •5.8 Оператор continue
- •6 Введення та виведення даних
- •7.1 Функція виведення printf
- •Int printf( стрічка форматування, змінна1, змінна2, ... );
- •7.2Функція введення scanf
- •Int scanf (стрічка форматування, адреса змінної1, адреса змінної2, ... );
- •9.1 Введення та виведення у файл
- •7 Масиви
- •7.1 Загальні поняття
- •7.2 Одновимірні масиви
- •Тип даних ім’я змінної [n];
- •7.3 Багатовимірні масиви
- •6. Функції
- •6.1 Основні поняття
- •{Тіло функції}
- •6.2 Область видимості
- •6.3 Порожній тип void
- •6.4 Передача аргументів у функцію
- •6.5 Рекурсивні функції
- •6.6 Прототипи функцій
- •8. Рядки в с
- •4.1 Прототипи
- •4.2 Функції перетворення буферів
- •4.3 Функції перевірки літер
- •4.4 Рядок символів
- •4.5 Операції з рядками:
- •4.6 Символьні константи
- •9. Покажчики
- •5.1 Визначення та ініціалізація покажчиків
- •5.2 Визначення покажчиків:
- •5.3 Масиви
- •5.6 Копіювання рядка
- •5.7 Посилання та оператор &
- •5.9 Посилання в якості результатів функції
- •5.10 Покажчики на функцію
- •Тип_функціі (* імя_покажчика) (специфікація_параметрів);
- •5.11 Покажчики на void
- •5.12 Арифметика покажчиків
- •10. Структури, об’єднання, перерахування
- •7.1 Структури
- •7.2 Ключове слово typedef
- •7.3 Об’єднання
- •7.4Перераховуваний тип (Enum)
- •Enum dataType
- •Enum day
- •11 Динамічне виділення пам'яті
5.7 Оператор break
Оператор break - використовується для негайного виходу з інструкцій циклів for, while чи оператора розгалуження switch. При вкладенні циклів інструкція break дозволяє вийти з тіла самої внутрішньої інструкції циклу. Після виконання інструкції break керування передається першій інструкції, що розташована за останньою інструкцією циклу, що перервався.
Приклад 14.Написати код обчислення суми чисел введених з клавіатури, у випадку введення числа «0» припинити обчислення.
int sum = 0,ch;
for(int i=0;i<10;i++)
{
scanf("%i",&ch);
sum=sum+ch;
if(ch==0) break;
}
5.8 Оператор continue
Оператор «переривання ітерації циклу» continue використовується для ігнорування інструкцій в тілі циклу, що залишилися, та переходу до чергової перевірки умов виконання тіла циклу. Тобто на відміну від інструкції break управління передається не на наступну після циклу інструкцію, а на наступний крок ітерації.
Приклад 15. Написати код обчислення суми непарних елементів в послідовності чисел від 0 до 9.
int sum=0;
for(int i=0;i<10;i++)
{
if (i%2==0) continue;
sum=sum+i;
}
6 Введення та виведення даних
7.1 Функція виведення printf
Функція printfзабезпечує виведення на екран монітору повідомлень і значень змінних. Для використання функціїprintf потрібно підключити бібліотеку <stdio.h>. Прототип функціїprintfнаступний:
Приклад 1.Синтаксисprintf
Int printf( стрічка форматування, змінна1, змінна2, ... );
Функція printf може складатися з одного чи декількох параметрів. Першим параметром єстрічка форматування, іншими параметрами можуть бути змінні чи вирази значення яких необхідно вивести на екран.
Стрічка форматування записується в подвійних лапках і може містити такі елементи: символи які потрібно вивести на екран, керуючі послідовності та специфікатори перетворення (табл. 7.1).
Таблиця 7.1 — Специфікатори перетворення для функції printf
Специфікатор перетворення |
Призначення |
Тип даних |
% i |
Для виведення цілих чисел зі знаком |
int,short, long |
% d |
Для виведення цілих чисел зі знаком |
int,short, long |
% u |
Для виведення беззнакових цілих |
insigned int |
% f |
Для виведення дійсних чисел, в форматі числа з плаваючою точкою |
float, double |
% n.mf |
Для виведення дійсних чисел в форматі з фіксованою точкою, де n– кількість цифр цілої частини,m— дробової |
float, double |
%e |
Для виведення дійсних чисел в експоненційному представленні |
float, double |
%g |
Для вибору одного з специфікаторів %fчи %e, який дозволить представити число у більш короткому вигляді |
float, double |
%o |
Для виведення цілих чисел у вісімковій системі числення |
int, short, long |
%x |
Для виведення цілих чисел у шістнадцятковій системі числення |
int, short, long |
%c |
Для виводу символів |
char |
%s |
Для виводу стрічки |
char [] |
%% |
Для виводу знаку % |
|
Функція printf повертає число виведених символів чи від'ємне значення у випадку помилки.
Специфікатори перетворення записуються в те місце у стрічці форматування, в яке потрібно вивести значення змінної, вказаної в наступних параметрах функції printf(рис 7.1).
Рисунок 7.1 – Виведення значень змінних на екран
Як видно з рис. 7.1 значення змінної sum1 буде виведено на місце першого специфікатора перетворення (%i) у стрічці форматування, а значення змінної sum2 відповідно на місце другого специфікатора перетворення. У випадку якщо sum1=3, аsum2 =15 функціяprintfз рис. 7.1. виведе на екран наступне:
Специфікатор перетворення %n.mfдозволяє здійснювати форматування чисел при виведенні таблиць значень.
Приклад 2. Виведення на екран повідомлень.
printf ("Hello Angeliсa!");
printf ("To be or not to be that is the question");
Приклад 3.Використання специфікаторів перетворення для виведення повідомлень та значень змінних.
int apples = 2, peares = 5;
float cash = 12.4f;
char symbol= ‘F’;
printf (“ Apples = %i”, apples); /*виведення на екран значення змінної apples типу int*/
printf (“ Apples = %i Peares = %i”, apples, peares); /*виведення на екран значеньзміннихapplesта peares типу int*/
printf (“ Cash = %f”, cash); /*виведення на екран значення змінної cash типу float*/
printf (“ Symbol = %c”, symbol); /*виведення на екран значення змінної symbol типу char*/
У стрічці управління для форматування інформації що виводиться на екран можуть бути використані керуючі послідовності (escape sequences)(табл. 3.2), які представляють собою спеціальні символьні комбінації. Керуюча послідовність складається зі зворотного слеша (\) (обов'язковий перший символ) і комбінації латинських літер і цифр (табл. 7.2).
Таблиця 7.2. Керуючі послідовності
Керуюча послідовність |
Пояснення |
\a |
Подача звукового сигналу |
\b |
Повернення на крок |
\t |
Горизонтальна табуляція |
\n |
Перехід на новий рядок |
\r |
Повернення каретки |
\” |
Подвійні лапки |
\’ |
Одинарні лапки |
\0 |
Нульовий символ |
\\ |
Зворотна дробова риса |
\ddd |
Вісімкове значення символу ASCII |
\xddd |
Шістнадцяткове значення символу ASCII |
Керуючі послідовності вигляду \ddd та \xddd (d позначає цифру) дозволяють представити будь-який символ з таблиці кодів ASCII у вигляді вісімкових чи шістнадцяткових чисел відповідно.
Приклад 4. Керуючі послідовності
printf(“\n”); /* перехід на новий рядок */
printf(“\012”); /* перехід на новий рядок при використанні вісімкового значення символу ASCII */
printf(“\x00A”); /* перехід на новий рядок при використанні шістнадцяткового значення символу ASCII */
Приклад 5. Керуючі послідовності
printf ("sum = %i \n", sum); /*виведення на екран значення змінної sum типу int та переходу на новий рядок */
printf ("a = %i\tb = %f \n", a, b); /*виведення на екран значень змінної a типу int та b типу float при використанні табуляції та переходу на новий рядок */