Лекція №1
Тема: Загальний огляд мови програмування Сі
План
Історія розвитку та місце мови програмування Сі серед інших мов
Структура Сі-програми
Заголовок програми
Функція main()
Опис змінних і констант
Запис коментарів у програмі
Короткий огляд операторів мови Сі
Історія розвитку та місце мови програмування Сі серед інших мов
Співробітник фірми Bell Labs Деніс Рітчі створив мову Сі у 1972 році під час спільної роботи з Кеном Томпсоном над операційною системою UNIX. Ця мова була розроблена як інструмент для програмістів-практиків. Мова Сі швидко стала популярною і однією з найважливіших мов програмування.
На початку 1980-х років вченим Бьєрном Страуструпом була розроблена МП С++. Вона є варіантом мови Сі, розширеного технологіями об’єктного програмування.
Мова С++ увібрала в себе кращі ідеї структурного програмування, яке зародилося на початку 1960-х років.
Структурне програмування — технологія створення програм у вигляді ієрархічно зв‘язаних модулів, які являють собою лінійну послідовність операторів циклу, присвоєння і розгалуження, а також виклику вкладених модулів.
Мова С++ вважається об’єктно-орієнтованою мовою програмування. Програма на С++ конструюється з невеликої кількості операторів. Вони виконуються послідовно і працюють з даними явно заданих типів. Мова С++ вважається мовою зі строгою типізацією — всі визначені в програмі змінні належать до конкретних типів даних.
Мова Сі/С++ відноситься до мов середнього рівня. Це не означає, що вона є менш ефективною або менш зручною ніж мови високого рівня такі як Паскаль або Бейсік. Це лише означає, що мова С/С++ об’єднує кращі властивості мов високого рівня, а також гнучкість асемблера. У табл.1_1 показано місце мови Сі/С++ серед інших мов програмування.
Таблиця 1_1
Рівень |
Назва мови програмування |
Високий |
Ada Modula-2 Pascal COBOL FORTRAN BASIC |
Середній |
Java C# C++ C |
Низький |
Macro-assembler Assembler |
Структура Сі-програми
Програма, що написана мовою Сі, має такий загальний вигляд (функції f1, f2, …, fn визначаються користувачем):
#Заголовок програми
тип_значення_що_повертається main ( )
опис змінних і констант
{
послідовність операторів
}
тип_значення_що_повертається f1 (список параметрів)
{
послідовність операторів
}
тип_значення_що_повертається f2 (список параметрів)
{
послідовність операторів
}
...
тип_значення_що_повертається fn (список параметрів)
{
послідовність операторів
}
Приклад 1_1
#include <stdio.h>
main() /*Example 1*/
{
int num;
num=1;
printf("I am an easy");
printf("PC .\n");
printf("My favorite number is %d, because it is the first .\n",num);
}
Короткі пояснення до цієї програми.
#include <stdio.h> − цей рядок указує компілятору, що необхідно включити інформацію, що знаходиться у файлі stdio.h.
main − ім’я функції. Будь-яка програма, що написана на Сі, складається з однієї або більше функцій. До складу цієї програми входить тільки одна функція — main().
/*example 1*/ − коментар. Символи /* і */ використовуються як відкриваюча і закриваюча дужки.
{ − початок тіла функції . Відповідно } − кінець тіла функції.
int num; − оператор опису. За допомогою цього оператора оголошується змінна num, яка може набувати цілечисельних (int) значень.
num = 1 − оператор присвоєння.
printf (“I am an easy”); − оператор виведення на друк. Виводиться фраза, що записана в лапках:
I am an easy
printf (“РС. \n”); − ще один оператор виведення на друк. В кінець попередньої фрази добавляється слово “PC”. Комбінація символів \n указує компілятору на початок нового рядка.
printf (“My favorite number is %d, because it is the first. \n”, num); − цей оператор виводить на друк значення змінної num. Символи %d указують компілятору, де і в якій формі друкувати значення змінної num.
Примітка:
Крапка з комою в кінці рядка вказує на те, що в цьому рядку знаходиться оператор, цей розділовий знак є частиною оператора, а не розділювачем операторів, як у мові Паскаль.