- •1.Системы счисления.
- •2.Принцип программного управления.
- •3. Назначение и классификация языков программирования.
- •4.Понятие и состав систем программирования.
- •5. Понятие информации и алгоритмов.
- •6.Блок-схемы разветвляющихся алгоритмов.
- •7.Блок-схемы циклических алгоритмов.
- •8.Потоковый ввод/вывод данных.
- •9.Использование манипуляторов при вводе/выводе данных.
- •10.Управляющие коды-символы. Отображение специальных символов на экране монитора.
- •11.Форматированный ввод/вывод данных.
- •12.Строковый и символьный ввод-вывод информации.
- •14.Пространство имен. Ключевое слово using как директива.
- •15. Процессор и имена заголовочных файлов
- •16.Средства отладки программ ms vs
- •17.Выполнение приложения с использованием средств интерактивной отладки.
- •18.Выполнение приложения с использованием средств планируемой отладки.
- •20.Определение переменных. Переменные и константы.
- •Описание и инициализация переменных
- •Int k; // это переменная целого типа int
- •Задание и использование констант
- •21.Логические переменные и примеры их использования в программах.
- •22.Операции присваивания. Особенности выполнения. Условная операция ?:
- •Пример конструкции ветвления
- •25.Оператор перехода goto. Оператор return. Оператор return
- •Оператор goto
- •26.Особенности синтаксиса и выполнения операторов перехода continue, break.
- •Цикл for
- •Описание синтаксиса
- •30.Время существования и область видимости переменных (auto, static, extern, register).
- •31.Создание исполняемого файла.
- •32.Массив. Определение и инициализация массива.
- •Пример инициализации массива
- •33.Символы, строки (инициализация, алгоритмы). Символьный тип char
- •34.Стандартные функции работы со строками. Функции работы со строками c
- •35.Обработка символьной информации.
- •36.Инициализация многомерных массивов.
- •37.Матрицы. Инициализация, ввод, вывод, алгоритмы поиска в матрице.
- •38.Ввод, вывод двумерных массивов.
- •39.Операции над указателями. Типы указателей.
- •40. Указатели на указатели.
- •41.Указатели и строки.
- •42.Ссылочный тип данных.
- •43. Указатели на многомерные массивы.
- •44.Массивы и указатели. Понятие индекса. Инициализация. Доступ к компонентам.
- •45.Многомерные массивы. Связь между указателями и массивами. Связь между массивами и указателями
- •46.Объявление и определение функций.
- •47.Вызов и использование функций.
- •Возврат в вызывающую функцию
- •48.Способ передачи аргументов в функции. Массивы как параметры функций.
- •49.Перегрузка функций. Функции с переменным числом аргументов. Задание параметров функции по умолчанию.
- •50.Указатели как формальные параметры и как результат функций.
- •51.Ссылки как формальные параметры и как результат функций.
- •52.Использование указателей на функцию.
- •53.Передача указателя на функцию.
- •54.Использование макроопределений.
- •55.Динамические переменные. Основные свойства динамических переменных.
- •56.Динамические массивы.
- •57.Формирование динамических переменных с использованием библиотечных функций.
- •58.Формирование динамических переменных с использованием операций new и delete.
- •59.Массивы указателей как структура данных.
- •Типы данных, используемые при работе с массивами указателей
- •60.Многоуровневые указатели.
- •61.Динамические матрицы.
- •62.Передача параметров функции main. Передача параметров в функцию
- •Тип имя_функции (const тип_переменной* имя_переменной, …) Пример
37.Матрицы. Инициализация, ввод, вывод, алгоритмы поиска в матрице.
С++ позволяет создавать многомерные массивы. Простейшим видом многомерного массива является двумерный массив. Двумерный массив - это массив одномерных массивов. Двумерный массив объявляется следующим образом: тип имя_массива[размер второго измерения][размер первого измерения]; Следовательно, для объявления двумерного массива целых с размером 10 на 20 следует написать: int d[10] [20] ; Посмотрим внимательно на это объявление. В противоположность другим компьютерным языкам, где размерности массива отделяются запятой, С помещает каждую размерность в отдельные скобки.
Для доступа к элементу с индексами 3, 5 массива d следует использовать d[3] [5]
Число байт в памяти, требуемых для размещения двумерного массива, вычисляется следующим образом: число байт = размер второго измерения * размер первого измерения * sizeof (базовый тип)
38.Ввод, вывод двумерных массивов.
С позволяет создавать многомерные массивы. Простейшим видом многомерного массива является двумерный массив. Двумерный массив - это массив одномерных массивов. Двумерный массив объявляется следующим образом: тип имя_массива[размер второго измерения][размер первого измерения]; Следовательно, для объявления двумерного массива целых с размером 10 на 20 следует написать: int d[10] [20] ; Посмотрим внимательно на это объявление. В противоположность другим компьютерным языкам, где размерности массива отделяются запятой, С помещает каждую размерность в отдельные скобки.
Для доступа к элементу с индексами 3, 5 массива d следует использовать d[3] [5]
В следующем примере в двумерный массив заносятся числа от 1 до 12, после чего массив выводится на экран. #include <stdio.h> int main(void) { int t,i, num[3][4]; /* загрузка чисел */ for(t=0; t<3; ++t) for (i=0; i<4; ++i) num[t][i] = (t*4)+i+1; /* вывод чисел */ for (t=0; t<3; ++t) { for (i=0; i<4; ++i) printf("%d ",num[t][i]); printf ("\n"); } return 0; } В данном примере num[0][0] имеет значение 1, num[0][1] имеет значение 2, num[0][2] - 3 и так далее. num[2][3] имеет значение 12.
Двумерные массивы сохраняются в виде матрицы, где первый индекс отвечает за строку, а второй -за столбец. Это означает, что правый индекс изменяется быстрее левого, если двигаться по массиву в порядке расположения элементов в памяти. На рис. показано графическое представление двумерного массива в памяти. Левый индекс можно рассматривать как указатель на строку.
Число байт в памяти, требуемых для размещения двумерного массива, вычисляется следующим образом: число байт = размер второго измерения * размер первого измерения * sizeof (базовый тип)
39.Операции над указателями. Типы указателей.
Над адресами в C++ определены следующие арифметические операции:
сложение и вычитание указателей с константой;
вычитание одного указателя из другого;
инкремент;
декремент.
Сложение и вычитание указателей с константой n означает, что указатель перемещается по ячейкам памяти на столько байт, сколько занимает nпеременных того типа, на который он указывает. Допустим, что указатель имеет символьный тип и его значение равно 100. Результат сложения этого указателя с единицей — 101, так как для хранения переменной типа char требуется 1 байт. Если же значение указателя равно 100, но он имеет целочисленный тип, то результат его сложения с единицей будет составлять 104, так как для переменной типа int отводится 4 байта.
Разность двух указателей – это разность их значений, деленная на размер типа в байтах. Так, разность указателей на третий и нулевой элементы массива равна трем, а на третий и девятый — шести. Суммирование двух указателей не допускается.
Инкремент перемещает указатель к следующему элементу массива, а декремент – к предыдущему:
К указателям так же применимы операции отношения ==, !=, <,>,<=,>=. Иными словами, указатели можно сравнивать. Например, если i указывает на пятый элемент массива, а j — на первый, то отношение i>j истинно. Кроме того, любой указатель можно сравнивать на равенство с нулем. Однако, все эти утверждения верны, если речь идет об указателях, ссылающихся на один массив. В противном случае результат арифметических операций и операций отношения будет не определен.