- •1. Мова програмування. Класифікація мов програмування. Поняття про інтерпретацію та компіляцію. Інтегровані середовища програмування.
- •2. Загальна структура програми. Основні розділи програми і правила їх описання. Директиви препроцесора.
- •3. Поняття змінної. Оголошення змінної. Типи даних. Поняття локальних і глобальних змінних. Час життя змінної. Константи.
- •1. Char - символ
- •3. Float - число з плаваючою комою одинарної точності
- •4. Double - число з плаваючою комою подвійної точності
- •4. Поняття оператора. Різновиди операторів. Вирази. Основні правила запису, обчислення та використання виразів. Надання значень виразів змінним. Пріоритет операцій. Арифметичні операції,
- •5. Оператори введення та виведення: з використанням формату, символів, рядків.
- •Int printf (const char * керуючий_рядок, ...);
- •Int scanf (const char * керуючий_рядок, ...);
- •6. Вказівники та посилання. Адреси об’єктів в пам’яті. Динамічні структури даних.
- •7. Складені типи даних: масиви. Поняття масиву, одновимірні та багатовимірні масиви. Ініціалізація масивів та виведення їх на екран. Класичні алгоритми для роботи з масивами
- •8. Складені типи даних: рядки. Бібліотека функцій обробки рядків. Класичні алгоритми для обробки рядків
- •9. Складені типи даних: структури (записи)
- •10. Файлові типи даних. Файли прямого доступу.
- •11. Файлові типи даних. Файли послідовного доступу.
- •12. Алгоритмічна конструкція розгалуження та її графічне подання. Оператори розгалуження (умовний оператор та оператор вибору). Оператори зміни порядку виконання програми.
- •13. Алгоритмічна конструкція повторення та її графічне подання. Циклічні конструкції в мовах програмування. Оператори циклів. Оператори зміни порядку виконання програми.
- •14. Функціональний підхід в програмуванні. Рекурсія та її програмна реалізація.
- •15. Алгоритми пошуку: послідовний та бінарний пошук.
- •16. Алгоритм впорядкування : вибірка, вставка, обмін.
- •18. Абстрактні типи даних: лінійні списки
- •19. Абстрактні структури даних: стеки та черги
- •20. Абстрактні структури даних: двійкові дерева.
- •21. Наближені методи обчислення визначених інтегралів: метод лівих, правих та середніх прямокутників; метод трапецій; метод Сімпсона.
- •Метод Монте-Карло: зміст, приклади, застосування для обчислення площ складних фігур.
- •Наближені методи розв’язання алгебраїчних рівнянь: метод половинного ділення; метод хорд; метод дотичних.
- •Поняття моделювання та типи моделей. Класифікація моделей, інформаційна модель, математична модель як різновид інформаційної моделі. Основні етапи моделювання.
7. Складені типи даних: масиви. Поняття масиву, одновимірні та багатовимірні масиви. Ініціалізація масивів та виведення їх на екран. Класичні алгоритми для роботи з масивами
Элементы одного типа данных удобно объединять, для того используется тип данных Массив
Массив — это набор переменных одного типа, имеющих одно и то же имя.
Одномерные массивы
Общая форма объявления одномерного массива имеет следующий вид:
тип имя_переменной [размер];
Как и другие переменные, массив должен быть объявлен явно, чтобы компилятор выделил для него определенную область памяти (т.е. разместил массив). Здесь тип обозначает базовый тип массива, являющийся типом каждого элемента. Размер задает количество элементов массива.
следующий оператор объявляет массив из 10 элементов типа int под именем mas:
int mas[10];
Многомерные массивы
В языке С можно пользоваться массивами, размерность которых больше двух. Общая форма объявления многомерного массива следующая:
тип имя_массива [Размер1][Размер2]...[РазмерN];
Массивы, у которых число измерений больше трех, используются довольно редко, потому что они занимают большой объем памяти.
Инициализация
В языке С массивы при объявлении можно инициализировать. Общая форма инициализации массива аналогична инициализации переменной:
тип имя_массива[размер1]...[размер№] = {список_значений};
Заполнение массивов
Массив может быть заполнен такими способами:
1. значения массива инициализируются в программе:
int b[5]={3,2,1};
//b[0]=3; b[l]=2; b[2]=l; b[3]=0; b[4]=0;
2. значения массива считываются с клавиатуры:
int b [10],i;
for(i=0;i<10;i++)
{
printf(“Введіть значення %d-того
елементу”,b[i]);
scanf(“%d”,&b[i]);
}
3. значения массива генерируются случайным числом:
int c[10],i;
for(i=0;i<10;i++)
{
c[i]=rand()%10-5;
printf(“%d\n”,c[i]);
}
4. значение массива считывается с файла.
Поиск максимального элемента в массиве
if (mas[i] >= max_X)
{
max_X = mas[i];
}
Поиск минимального элемента в массиве
if (mas[i] <= min_X)
{
min_X = mas[i];
}
Сортировка массива
or (int i=0;i<n;i++)
for (int j=0; j<n;j++)
if (a[j] > a[j+1]) { // алгоритм сортировки по возрастанию
Х = a[j];
a[j] = a[j+1];
a[j+1] = Х;
}
8. Складені типи даних: рядки. Бібліотека функцій обробки рядків. Класичні алгоритми для обробки рядків
Одномерный массив наиболее часто применяется в виде строки символов.
Строка — это одномерный массив символов, заканчивающийся нулевым символом. В языке С признаком окончания строки (нулевым символом) служит символ '\0' (В языке С он используется для того, чтобы определить конец строки). Таким образом, строка содержит символы, составляющие строку, а также нулевой символ. Это единственный вид строки, определенный в С.
Основные методы инициализации строк.
• char str1[]= "ABCdef";
• char str2[]={'A', 'B', 'C', 'd', 'e', 'f',0};
• char str3[100];
gets(str3);
• char str4[100];
scanf("%s",str4);
Стандартная библиотека С содержит класс функций для работы со строками, все они начинаются с букв str. Для того, чтобы использовать одну или несколько функций необходимо подключить библиотеку string.h.
#include<string.h>
Имя функции |
Выполняемое действие |
strcpy(s1,s2) |
Копирование s2 в s1 |
strcat(s1,s2) |
Конкатенация (присоединение) s2 в конец s1 |
strlen(s1) |
Возвращает длину строки s1 |
strcmp(s1,s2) |
Возвращает 0, если s1 и s2 совпадают, отрицательное значение, если s1<s2 и положительное значение, если s1>s2 |
strchr(s1,ch) |
Возвращает указатель на первое вхождение символа ch в строку s1 |
strstr(s1,s2) |
Возвращает указатель на первое вхождение строки s2 в строку s1 |
