eolymp

Мова програмування С/С++. Основні поняття. Типи даних.

Мову С розробив Деніс Рітчі у 1972 році для програмування в операційній системі Linux

Мова С++ - послідовник мови С, що містить обєктно-орієнтоване програмування.

Алфавіт

великі та малі літери латинської абетки;

• арабські цифри;

• пробільні символи : пробіл, символи табуляції, символ переходу на наступний рядок тощо;

• спеціальні символи , . ; : ? ‘ ”   ! | / \ ~ ( ) [ ] { } < > # % ^ & - + * =

 

Програма мовою С складається з синтаксичних конструкцій які називаються команди (оператори, вказівки).

Команди будуються з лексем.

Лексема – неподільний елемент мови (слово, число, символи операцій).

 

Ідентифікатор – це назва (ім’я), яку користувач надає об’єктам, наприклад змінним, сталим, функціям.

Ідентифікатори записуються латинськими буквами, цифрами, знаком підкреслення.

Розпочинаються ідентифікатори з латинських літер та знаку підкреслення.

A, a, max, Max, MAX, _max, max1, max_znach – правильно записані ідентифікатори.

1max, max-znach, max znach, a..b – неправильно записані ідентифікатори

При написаннні імені ідентифікатора враховується регіср.(MAX,Max,max- три різні ідентифікатори)

Ключові слова – це зарезервовані ідентифікатори, які використовуються для написання команд.

auto continue float interrupt short unsigned

asm default for long signed void

break do far near sizeof volatile

case double goto pascal static while

cdecl else huge switch struct

char enum if register typedef

const extern int return union

Перепроцесор - це програма, яка опрацьовує директиви.

Директива перепроцесора це команди компілятора, які виконуються на початку програми

Директиви мови С розпочинаються символом #

#include – директива підключення файлу, бібліотеки

Директива #define

#define –має два значення:

1 – оголошення константи

         #define N 25

2- описати макроси (короткі команди, функції тощо.)

         #define D(a,b,c) ((b*b)-4*(a)*(c))

         #undef D

         #define D(a,b,c) ((a)*(a)*(a))

Константа – це  величина, яка не змінюється протягом виконання всієї програми

Цілі константи:

1389, 196, 0, -1024

Дійсні константи:

2.1324, 1.65e-28,  .123E21.

Константи у восьмирічній системі

012, 0765

Константи у шістнадцятирічній системі

0x12, 0x1ABC, 0xFFF

Символьні константи:

‘A’, ‘5’, ‘\n’,’\0xdddd’

Рядкові константи

“Рядкові константи”, “Hello !”, “12345”, “C++”.

Іменовані константи

Загальний вигляд іменованої константи:

const int a=10;

const pi=3.14.15926;

#include

Назва константи      значення

M_PI               π

M_PI_2           π/2

M_PI_4           π/4

M_1_PI           1/π

M_2_PI           2*π

M_1_SQRTPI 1/√π

M_2_SQRTPI 2/√π

M_E                E

M_LOG2E                log(e)

M_LOG10E              log10(e)

M_LN2            Ln(2)

M_LN10          Ln(10)

M_SQRT                  2√2

M_SQRT_2              √2/2

Коментар – це фрагмент тексту який призначено для пояснення програми або окремих фрагментів. Коментар записують:

/*   початок коментарю

         коментар може бути записаний

         в декількох стрічках

*/    кінець коментарю

// коментар записаний в одній стрічці

 

#include   //опис бібліотек

void main()                //головна функція

{

                   тіло програми;

}

На приклад:

#include

void main()

{

                   cout<<“моя перша програма мовою сі!\n”;

}

 

Типи даних

Вид

Назва

Діапазон

Обсяг байтів

Символьний

unsigned char

0 .. 255

1

Char

-128 .. 127

1

Перелічувальний

Enum

-32,768 .. 32,767

2

Цілі числа

unsigned int

0 .. 65,535

2

short int

-32,768 .. 32,767

2

Int

-32,768 .. 32,767

2

unsigned long

0 ..  4,294,967,295

4

Long

-2,147,483,648 .. 2,147,483,647

4

long long або __int64

–9 223 372 036 854 775 808 …

 9 223 372 036 854 775 807

8

unsigned __int64

0 … 18446744073709551615

8

Дійсні числа

Float

3.4 * (10-38) .. 3.4 * (10+38

4

Double

1.7 * (10-308) .. 1.7 * (10+308)

8

long double

3.4 * (10-4932) .. 1.1 * (10+4932)

10

 Закріплення вивченого матеріалу.

  1. Коли і ким була створена мова Сі?
  2. З чого складається алфавіт мови Сі?
  3. Що таке лексема?
  4. Що таке ідентифікатор, правила запису ідентифікатора?
  5. Що таке перепроцесор? Як записуються директиви перепроцесора?
  6. Як записуються константи мовою С?
  7. Як записуються коментарі мовою С?
  8. Які типи даних використовують у мові С?
  9. Яка структура програми мовою?

10. Виберіть правильно записані ідентифікатори:

а) a, aa, _a, 1s, max znach;

б) q, f_1? A..a, a*s;

в) s1, Max_znach, x1,_y;

11. Які з тверджень правильні?

в) тип int займає 1 байт

г) тип long займає 4 байт

д) тип char займає 2 байт

е) тип unsigned char займає 4байт

є) тип short int займає 4 байти