- •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.4 Оператор циклу for
Оператор for - це найбільш загальний спосіб організації циклу.
Приклад 8. Синтаксис оператора for
For ( Вираз 1 ; Вираз 2 ; Вираз 3 ) тіло циклу
Вираз 1як правило використовується для встановлення початкового значення (ініціалізації) змінних, керуючих циклом.Вираз 2визначає умову, при якій тіло циклу буде виконуватися.Вираз 3визначає зміну змінних, керуючих циклом після кожного виконання тіла циклу.
Схема виконання оператора for наступна:
1. Обчислюється Вираз 1.
2. Обчислюється Вираз 2.
3. Якщо значення Виразу 2відмінне від нуля, тобто «істина» (true), виконується тіло циклу, обчислюєтьсяВираз 3і здійснюється перехід до пункту 2, якщоВираз 2дорівнює нулю, «хибність» (false), то управління передається оператору, що іде за оператором for.
Оператор for є циклом з передумовою, тобто перевірка умови завжди виконується на початку циклу. Це значить, що тіло циклу може жодного разу не виконатися, якщо умова виконання відразу буде хибною. Тіло циклу може бути простим чи складеним оператором.
Блок-схема оператора циклу for зображена на рисунку 5.4.
Рисунок 5.4 – Блок-схема оператора циклу for
Приклад 9. Написати програму яка виводить на екран таблицю квадратів перших десяти додатних чисел.
#include <stdlib.h>
#include <stdio.h>
int main(){
int x = 1; /*число*/
int y; /*квадрат числа*/
for(int i=0; i<=10; i++)
{
y = x * x;
printf("%3i\t%4i\n", x, y);
x += 2;
}
system("PAUSE");
return 0;
}
5.5 Оператор циклу while
Оператор циклу while є циклом із передумовою.
Приклад 10.Синтаксис оператора while
While ( Вираз ) тіло циклу
У якості виразу допускається використовувати будь-який вираз мови С, а у якості тіла циклу простий чи складений оператор.
Схема виконання оператора while наступна:
1. Обчислюється вираз.
2. Якщо вираз хибний (false), то виконання оператора while закінчується і виконується наступний оператор. Якщо значення виразу «істина» (true), то виконується тіло циклу.
3. Процес повторюється з пункту 1.
Блок-схема оператора циклу while зображена на рисунку 5.5.
а) б)
Рисунок 5.5 – Блок-схема оператора циклу while
На рисунку 5.5а) зображена загальна блок-схема оператора циклу while, блок-схему на рисунку 5.5б) можна інтерпретувати як розгорнуту блок-схему оператора for.
Приклад 11. Напишіть програму, яка виводить на екран таблицю значень функції у діапазоні від -4 до 4. Крок зміни аргумента 0,5.
#include <stdlib.h>
#include <stdio.h>
int main(){
float xmin=-4, xmax=4; /* xmin, xmax – границі діапазону */
float dx = 0.5; /* dx – крок зміни аргументу */
float y,x;
printf (" x | y \n" );
x=xmin;
while ( x <= xmax )
{
y = 2*x*x - 5*x - 8;
printf ("%.2f | %.2f \n", x, y );
x = x + dx;
}
system("PAUSE");
return 0;
}
5.6 Оператор циклу do while
Оператор циклу do while є циклом із післяумовою і використовується в тих випадках, коли необхідно виконати тіло циклу хоча б один раз.
Приклад 12. Синтаксис оператора do while
do
Тіло циклу while ( Вираз ) ;
Схема виконання оператора do while наступна:
1. Виконується тіло циклу (яке може бути простим чи складеним оператором).
2. Обчислюється вираз.
3. Якщо вираз хибний (false), то виконання оператора do while закінчується і виконується наступний за do while оператор. Якщо значення виразу «істина» (true), то виконання оператора продовжується з пункту 1.
Блок-схема оператора циклу do while зображена на рисунку 5.6.
а) б)
Рисунок 5.6 – Блок-схема оператора циклу do-while
На рисунку 5.6 а) зображена загальна блок-схема оператора циклу do while, на рисунку 5.5б) зображена розгорнута блок-схема оператора циклу do while, в якій «Вираз 1», «Вираз 2» та «Вираз 3» відповідає виразам визначеним для оператора for.
Приклад 13.Написати програму обчислення суми чисел введених з клавіатури, у випадку введення числа «0» припинити обчислення.
#include <stdlib.h>
#include <stdio.h>
int main()
{
int sum=0, ch;
printf(“Vveditj chysla (0 – kinezj vvedennya):”);
do{
scanf("%i",&ch);
sum=sum+ch;
}while(ch!=0);
printf("sum = %i \n", sum);
system("PAUSE");
return 0;
}