
- •1.Моделированьепроцесса решения.
- •2. Формализация процесса решения задачи.
- •1) Поиск решения эквивалентной задачи.
- •3.Интуитивное понятие алгоритма.
- •4.Основные свойства алгоритма.
- •5.Взаимосвязь между набором элементарных операций и исполнителем алгоритма.
- •6. Способы изображения алгоритма.
- •7.Введение в язык Си: истоки, парадигма программирования (отношение между набором алгоритмов и набором данных в программах).
- •8.Структура программ на языке Си. Директива процессора, комментарии.
- •11. Описание переменной: имя переменной; строчные и прописные буквы в идентификаторах, задание начального значения (инициализация).
- •15.Преобразование операндов в арифметических выражениях.
- •16.Сложние объявления и элементы объявления.
- •17.Указатели (2 категории).
- •19. Оператор постфиксного увеличения/ уменьшения.
- •20. Оператор префиксного увеличения/ уменьшения.
- •21. Простой оператор присваивания.
- •22. Составные операторы присвоения.
- •23. Условный оператор if.
- •24. Оператор выбора switch.
- •25. Понятие массива, описание массива, размерность массива, размещение в памяти.
- •26. Описание массива имеет вид:
- •27. Массивы символов и литеральные строки.
- •28. Операторы цикла (for, while и do-while) для работы с массивами.
- •29. Многомерные массивы: описание, размещение в памяти, инициализация, обращение к элементам.
- •30. Взаимосвязь массивов и указателей. Описание указателя.
- •32. Указатель типа void*. Преобразование указателя операцией приведения типа.
- •33. Доступ к переменным через указатели: операция & и операция *.
- •37.Синтаксис объявления (--заголовка, --прототипа ) функции. Оператор return
- •38. Понятие формальных параметров и фактических аргументов (при вызове ф-ции). Переменное число аргументов или аргументы с изменяющимися типами (многоточие).
- •39. Указатель на функцию
- •40. Перегрузка функций
- •41. Итерпритация сложных описаний изнутри наружу.
11. Описание переменной: имя переменной; строчные и прописные буквы в идентификаторах, задание начального значения (инициализация).
Описание переменных включает: спецификацию типа, необязательные модификаторы (задают особенности внутреннего представления или класс хранения), имя и может присутсвовать начальное значение.
<тип>[<модификаторы>]<имя> [<нач_знач.>];
int i,j,k;
float t,r,s;
double g=0.5;
Имя переменной – любая последовательность прописных и строчных букв англ. алфавита, цифр и знака подчеркивания. Имя обязательно начинается с буквы или знака подчеркиванья, и во многих средах компилятор воспринимает только первые 32 символа.
Имя не должно совпадать с ключевыми словами.
12. Понятие «тип» в С++; категории: скалярные и агрегированные типы; основные (фундаментальные) и производные типы.
1.Все типы можно разбить на 4 категории:
1) «пустой» - void;
2) Скалярный (основной/ элементарный/ стандартный):
арифметические типы,
перечисленные,
указатели,
ссылочный (в С++);
3) Тип «функция»;
4) Агрегированный:
массивы,
структуры,
объединения,
классы (в С++).
2.Еще одна классификация типов:
1) Основные (фундаментальные):
void, char, int, float, double со своими модификаторами
2) Производные:
Указатели (*), ссылки (&), массивы ([]), функции ( () ), структуры, классы, объединения.
13.Разделители и лексемы в С++.
На фазе лексического анализа при компиляции исходный код разбивается на лексемы и разделители.
Разделители: пробелы, вертикальная и горизонтальная табуляция, символ начала новой строки «\».
«Borland \
International» // симв. «\» склеит в одну строку
// - кометнарий
/* комментарий */
Лексемы делятся на 6 классов:
1) ключевые слова
2)идентификаторы
3) константы
4) литеральные строки “..”
5) операторы
6)разделители (знаки пунктуации)
14.Опесание оператора в С++. Унарные и бинарные операторы.
Оператор – лексема, которая задаёт действия, когда применяется к переменной или к другому объекту в выражении, за исключением [], (), ?: (условие). Многосимвольные операторы рассматриваются как одна лексема: >=, <=.
Некоторые операторы имеют более одной интерпретации в зависимости от контекста.
a*b умножение
*ptr косвенная адресация
a&b побитовое умножение
&b адресная операция (операция ссылки)
Унарные операторы (применяются к одному операнду):
& - ссылка, взять адресс
* - разъименование (взять содержимое по этому адресу)
+ - унарный плюс
- - унарный минус
~ - побитовое отрицание
! - логическое отрицание
++ - префикс (++i) и постфикс (i++)
-- - префикс (--i) и постфикс (i++)
Бинарные операторы:
1) аддитивные (+, -)
2) мультипликативные (*, /, %)
3) оператор сдвига ( <<, >>)
4) побитовые операторы (& -и,¦ - или, ^ - xor)
5) логические (&&, ||)
6) оператор присвоения:
Простой =
Комбинированный *=, /= , -= , %=, <<=, >>=, &=, ¦=, ^=
7) оператор эквивалентности (== , !=)
8) оператор выбора компоненты (. –прямой, ‑> ‑косвенний)
9)оператор отношения (< , > , <= , >=)
10)оператор елемента класса
:: - доступ к сфере действия (разширение области видимости)
.* - разименованный указатель
->* - разименованный указатель через непрямой селектор
11)условный оператор А ? Х : У