Таблиця 1.1. Escape-послідовності (керуючі та спеціальні символи)
Спеціальний символ |
Шістнадцятковий код |
Значення |
\a |
07 |
звуковий сигнал |
\b |
08 |
повернення на 1 символ |
\f |
0C |
переведення сторінки |
\n |
0A |
перехід на наступний рядок |
\r |
0D |
повернення каретки |
\t |
09 |
горизонтальна табуляція |
\v |
0B |
вертикальна табуляція |
\\ |
5C |
символ \ |
\' |
27 |
символ ' |
\" |
22 |
символ " |
\? |
3F |
символ ? |
\0 |
00 |
нульовий символ |
\0ddd |
- |
вісімковий код символу |
\0xddd |
ddd |
шістнадцятковий код символу |
Таблиця 1.2. Типи даних
Тип |
Діапазон значень |
Розмір (байт) |
Специфікація перетворення для функції printf() |
Специфікація перетворення для функції scanf() |
char |
-128 … 127 |
1 |
%c |
%c |
short |
|
2 |
%hd |
%hd |
int |
-32768 ... 32767 |
2 або 4 |
%d |
%d |
long |
-2,147,483,648 ... 2,147,483,647 |
4 |
%ld |
%ld |
unsigned |
|
2 або 4 |
%u |
%u |
unsigned long |
0 ... 4,294,967,295 |
4 |
%lu |
%lu |
float |
±(3.4*10-38 ... 3.4*1038) |
4 |
%f |
%f |
double |
±(1.7*10-308 ... 1.7*10308) |
8 |
%f |
%lf |
long double |
±(3.4*10-4932 ... 3.4*104932) |
10 |
%Lf |
%Lf |
Синтаксис функції printf(): printf("Рядок формату"[, аргумент1[, аргумент2, [...]]]);
Специфікації перетворення для функції printf(): %d - десяткове ціле; %i - десяткове ціле; %o - вісімкове ціле без знаку; %u - десяткове ціле без знаку (unsigned) %x - шістнадцяткове ціле без знаку; %f - представлення величин float та double з фіксованою точкою; %e або %Е - експоненціальний формат представлення дійсних величин; %g - представлення дійсних величин як f або Е в залежності від значень; %c - один символ (char); %s - рядок символів; %p - покажчик %n - покажчик %ld - long (в десятковому вигляді); %lo - long (у вісімковому вигляді); %p - виведення покажчика в шістнадцятковій формі; %lu - unsigned long.
Таблиця 1.3. Значення основних модифікаторів рядка формату
Модифікатор |
Значення |
- |
Аргумент буде друкуватися починаючи з лівої позиції поля заданої ширини. Звичайно друк аргументу закінчується в самій правій позиції поля. Приклад : %-10d |
Рядок цифр |
Задає мінімальну ширину поля. Поле буде автоматично збільшуватися, якщо число або рядок не буде вміщуватися у полі. Приклад : %4d |
Цифри.цифри |
Визначає точність : для типів даних з плаваючою комою - число символів, що друкуються зліва від десяткової коми; для символьних рядків - максимальну кількість символів, що можуть бути надруковані. Приклад : %4.2f |
Синтаксис функції scanf (): scanf("Рядок формату",&аргумент1[,&аргрумент2[, ...]]);
Таблиця 1.4. Бінарні арифметичні операції
Операція |
Значення |
Приклад |
+ |
Додавання |
a+b |
- |
Віднімання |
a-b |
* |
Множення |
a*b |
/ |
Ділення |
a/b |
% |
Залишок від ділення |
a%b |
Таблиця 1.5. Унарні арифметичні операції
Операція |
Значення |
Приклад |
Пояснення |
+ |
Унарний плюс (підтвердження знака) |
+5 |
- |
- |
Унарний мінус (зміна знака) |
-x |
- |
++ |
Операція інкременту (збільшення на 1) |
i++ |
Спочатку використовується поточне значення змінної, а потім відбувається збільшення цієї змінної на 1 |
++i |
Змінна спочатку збільшується на 1, а потім її нове значення використовується у виразі |
||
-- |
Операція декременту (зменшення на 1) |
j -- |
Спочатку використовується поточне значення змінної, а потім відбувається зменшення цієї змінної на 1 |
--j |
Змінна спочатку зменшується на 1, а потім її нове значення використовується у виразі |
Таблиця 1.6. Операції присвоювання
Операція |
Значення |
a = b |
присвоювання значення b змінній а |
a += b |
додавання з присвоюванням. Означає a = a + b |
a -= b |
віднімання з присвоюванням. Означає a = a - b |
a *= b |
множення з присвоюванням. Означає a = a * b |
a /= b |
ділення з присвоюванням. Означає a = a / b |
a %= b |
залишок від ділення з присвоюванням. Означає a = a % b |
a <<= b |
зсув вліво з присвоюванням. Означає a = a << b |
a >>= b |
зсув вправо з присвоюванням. Означає a = a >> b |
a &= b |
порозрядне І з присвоюванням. Означає a = a & b |
a |= b |
порозрядне АБО з присвоюванням. Означає a = a | b |
a ^= b |
побітове додавання за МОД2 з присвоюванням, означає a = a ^ b |
Таблиця 1.7. Операції порівняння
Операція |
Значення |
< |
менше |
<= |
менше або рівно |
== |
перевірка на рівність |
>= |
більше або рівно |
> |
більше |
!= |
перевірка на нерівність |
Таблиця 1.8. Логічні операції
Операція |
Значення |
&& |
логічне І (and) |
| | |
логічне АБО (or) |
! |
логічне заперечення (not) |
Структура вибору if
Синтаксис:
if (<умова>)
{ <послідовність_операторів>;
}
Структура вибору if/else
Синтаксис:
if (<умова>)
{ <послідовність_операторів_1>;
} else
{
<послідовність_операторів_2>;
}
або
if (<умова_1>)
{ <послідовність_операторів_1>;
} else if (<умова_2>)
{
<послідовність_операторів_2>;
}
Структура вибору switch
Синтаксис:
switch(<вираз цілого типу>) { case <значення_1>: <послідовність_операторів_1>; break; case <значення_2>: <послідовність_операторів_2>; break; .............................................................. case <значення_n>: <послідовність_операторів_n>; break; [default: <послідовність_операторів_n+1>;] }
Структура повторення while
Синтаксис:
while (<логічний вираз>)
{ <послідовність_операторів>;
}
Структура повторення for
Синтаксис:
for([ініціалізація];[перевірка_умови];[нове_значення])
{ <послідовність_операторів>;
}
Структура повторення do while
do
{ <послідовність_операторів>;
}
while (<логічний_вираз>);
Оператор розриву break
Синтаксис:
break;
Оператор продовження continue
Синтаксис:
continue;
Оператор переходу goto
Синтаксис :
goto <мітка>;
/* ... */
<мітка> :
<послідовність_операторів>;
Таблиця 1.9. Математичні функції (math.h)
Функція |
Опис |
Тип повернення |
abs(int x); |
Повертає модуль цілого числа. |
int |
acos(double x); acosl(long double (x)); |
Повертає арккосинус аргумента. |
double long double |
asin(double x); asinl(long double (x)); |
Повертає арксинус аргумента |
double long double |
atan(double x); atanl(long double (x)); |
Повертає арктангенс аргумента. |
double long double |
atan2(double y, double x); atan2l(long double(y), long double (x)); |
Повертає арктангенс відношення аргументів. |
double long double |
ceil(double x); ceill(long double (x)); |
Заокруглення до найменшого цілого, більшого або рівного заданому числу |
double long double |
cos(double x); cosl(long double x); |
Обчислення косинуса. |
double long double |
cosh(double x); coshl(long double (x)); |
Обчислення гіперболічного косинуса |
double long double |
exp(double x); exp(long double (x)); |
Повертає степінь числа е. |
double long double |
fabs(double x); fabsl(long double @E(x)); |
Повертає модуль числа (для дійсних чисел) |
double long double |
floor(double x); floorl(long double (x)); |
Заокруглення до найменшого цілого, меньшого або рівного заданому числу |
double long double |
fmod(double x, double y); fmod(long double (x), long double (y)); |
Повертає залишок від ділення аргументів |
double long double |
frexp(double x, int *exponent); frexp(long double (x), int *(exponent)); |
Виділяє з числа мантису і експоненціальну частину |
double long double |
ldexp(double x, int expon); ldexpl(long double (x), int (expon)); |
Перетворює мантису і показник степеня в число. |
double long double |
log(double x); logl(long double (x)); |
Обчислює натуральний логарифм |
double long double |
log10(double x); log10l(long double (x)); |
Обчислює десятковий логарифм |
double long double |
modf(double x, double *ipart); modfl(long double (x), long double *(ipart)); |
Розбиває число на цілу і дробову частини (зберігає цілу частину в ipart та повертає дробову частину) |
double long double |
pow(double x, double y); pow(long double (x), long double (y)); |
Підносить число до вказаного степеня |
double long double |
sin(double x); sinl(long double x) |
Обчислює синус аргумента |
double long double |
sinh(double x); sinhl(long double (x)); |
Обчислює гіперболічний синус аргумента |
double long double |
sqrt(double x); sqrtl(long double @E(x)); |
Обчислює квадратний корінь аргумена |
double long double |
tan(double x); tanl(long double x); |
Обчислює тангенс аргумента |
double long double |
tanh(double x); tanhl(long double (x)); |
Обчислює гіерболічний тангенс аргумента |
double long double |