While (условие выполнение цикла)
{
оператор 1 ;
оператор 2 ;
оператор 3 ;
¼
}
Цикл for
For (нач. знач. цикла; условие выхода из цикла; шаг цикла)
оператор;
Или
For (нач. знач. цикла; условие выхода из цикла; шаг цикла)
{
оператор 1 ;
оператор 2;
оператор 3;
¼
}
Оператор do – while
Do
оператор;
while (условие);
Цикл do – while гарантированно выполнится хотя бы один раз.
В случае выполнения нескольких утверждений используются фигурные скобки для выделения тела цикла:
do {
оператор 1;
оператор 2;
оператор 3;
¼ } while (условие);
Оператор цикла while называется оператором цикла с предусловием, оператор for – оператором цикла с параметром, оператор do – while – оператором цикла с постусловием.
Условные операторы: if, if – else, if – else if – else, switch – case – default,оператор условия ?,операторы перехода break, continue,безусловный оператор перехода goto.
Оператор if
Общая форма записи оператора if:
If (условие)
оператор;
Или
If (условие)
{
оператор1;
оператор 2;
¼
}
Конструкция if – else
Общая форма записи конструкции if – else:
If (условие)
оператор 1;
Else
оператор 2;
Или
If (условие)
{
оператор 1;
оператор 2;
¼
}
Else
{
оператор 3;
оператор 4;
¼
}
Конструкция if – else if – else if – ¼ – else
Форма записи конструкции if – else if – else if – ¼ – else:
If (условие 1)
оператор 1;
Else if (условие 2)
оператор 2;
Else if (условие 3)
|
|
оператор 3;
¼
Else
оператор 4;
Или
If (условие 1)
{
операторы 1;
¼
}
Else if ( условие 2)
{
операторы 2 ;
¼
}
Else if ( условие 3)
{
операторы 3 ;
¼
}
¼
Else
{
Операторы 4;
¼
}
Операторswitch
switch (переменная или выражение) {
case значение1:
оператор 1 ;
¼
break;
case значение 2:
оператор 2 ;
¼
break;
¼
case значение 3 :
оператор 3 ;
¼
break;
default:
оператор 4 ;
¼
Break ;
}
Условный оператор ?
Условие ? выражение_1 : выражение_2
Тернарный оператор условия ? наиболее часто используется для присвоения переменной одного из двух значений в зависимости от некоторого условия.
Оператор break
Оператор, или утверждение, break (англ. «прерывать») служит для немедленного выхода из цикла, будь то while, for или do – while, после чего выполнение программы продолжается с утверждения (фрагмента программы), непосредственно следующего за циклом.
Если оператор break встречается во вложенном цикле (вложенных циклах), то будет прекращено выполнение того цикла, в котором он встретился.
Необходимость в использовании оператора прерывания break в теле цикла возникает тогда, когда условие продолжения итераций нужно проверять не в начале цикла (как в циклах while и for) и не в конце (как в цикле do – while), а в середине тела цикла.
|
|
Формат записи оператора break:
break ;
Операторcontinue
Оператор, или утверждение, continue (англ. «продолжать») служит для перехода к следующей итерации цикла [2].
Оператор continue противоположен по действию оператору break. Он позволяет в любой точке тела цикла (while, for или do – while) прервать текущую итерацию и перейти к проверке условий продолжения цикла. В соответствии с результатами проверки либо заканчивается выполнение цикла, либо начинается новая итерация. При этом все утверждения (фрагменты программы), которые следуют за оператором continue (ключевым словом), автоматически пропускаются.
Формат записи оператора continue:
continue ;
Оператор goto
Для оператора goto всегда необходима метка. Метка – это идентификатор с последующим двоеточием. Метка должна находиться в той же функции, что и оператор, переход в другую функцию невозможен. Она может стоять как до, так и после оператора.
Общий формат записи оператора goto:
goto метка ;
.
метка : заданные действия.
С помощью указаннгого оператора можно не только выходить из цикла, но и организовать его.
Логические операторы отношения
|
|
Логические операторы отношения | ||
№ п/п | Оператор | Операция |
1 2 3 | && || ! | И ИЛИ НЕ, отрицание |
Ниже приведены операции отношений в убывающей последовательности приоритетов [2]:
наивысший !, > >= < <=, == !=, && ; низший || .
Как и в арифметических выражениях, для изменения порядка выполнения операций сравнения и логических операций можно использовать круглые скобки.
Результат любой операции сравнения или логической операции есть 0 (нуль) или 1.
Массивы
Одномерные массивы.Одномерный массив – это список связанных однотипных переменных. Общая форма его записи:
тип имя_массива[размер];
Индексация массива начинается с нуля.
Для одномерных массивов общий размер в байтах вычисляется по формуле
всего байт = размер типа в байтах × количество элементов.
Двухмерные массивы, матрицы
Двухмерный массив представляет собой список одномерных массивов. Общая форма записи:
тип имя_массива[размер1] [размер2];
В приведенной записи размер1 означает количество строк двухмерного массива, а размер2 – количество столбцов.
В двухмерном массиве позиция любого элемента определяется двумя индексами. Индексы каждого из размеров массива начинаются с нуля.
|
|
Место хранения для всех элементов массива определяется во время компиляции. Память, выделенная для хранения массива, используется в течение всего времени его существования.
Для двухмерных массивов общий размер в байтах вычисляется по формуле
всего байт = число строк × число столбцов × размер типа в байтах
Многомерные массивы
Общая форма записи многомерного массива:
тип имя_массива[размер1] [размер2] ¼ [размер N ];
Массивы при объявлении можно инициализировать. Общая форма инициализации:
тип имя_массива[размер1] ¼ [размер N ] = {список_значений};
В список_значений входят константы, разделенные запятыми. Типы констант должны быть совместимы с типом массива.
Пример инициализации одномерного массива:
int A [5] = {1, 2, 3, 4, 5};
При этом A [0] = 1, A [1] = 2 и т. д.
При инициализации многомерного массива для улучшения наглядности элементы инициализации каждого измерения можно заключать в фигурные скобки.
Пример инициализации двухмерного массива:
int MN [3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
Массив MN [3][4] – это матрица, у которой 3 строки и 4 столбца.
Для многомерных массивов инициализацию можно также проводить с указанием номера инициализируемого элемента.
Пример инициализации трехмерного массива:
int XYZ [2][3][4] = {
{ {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} },
{ {13, 14, 15, 16}, {17, 18, 19, 20}, {21, 22, 23, 24} }
};
Возможна инициализация безразмерных массивов. Например, для одномерного массива
int A [ ] = {1, 2, 3, 4, 5};
В многомерном массиве размер самого левого измерения также можно не указывать. В частности, для инициализации массива MN [3][4] допустима следующая запись:
int MN [][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
Часть 2 (ОАиП)
Краткое понятие указателей
Указатель – это переменная, содержащая адрес другой переменной.
Объявление указателя: тип *имя_указателя;
Например: int *pa; // переменная pa, являющаяся указателем, содержит адрес области памяти, хранящей значение типа int. Существует три вида указателей:
1. Указатель на объект известного типа.( адрес объекта). Например: int *ptr;
2. Указатель типа void. (Иип объекта заранее не определен). Например: void *vptr;
3. Указатель на функцию. Адрес, при вызове функции.
Операции над указателями
1. & (взятие адреса).
Например: int *ptr, var=1; // ptr – указатель, var – переменная
ptr = &var; // В ptr заносится адрес var
2. * (операция разадресации).(Для доступа к значению).
*ptr = 9; // В ячейку памяти, с адресом ptr записывается значение 9
var = *ptr; // Переменной var присваивается значение по адресу ptr
3.Арифметические операции сложения, инкремента (увеличения на 1), вычитания, декремента (уменьшения на 1) и операции сравнения (>, >=, <, <=, ==, Например:
ptr++; // Сдвиг указателя ptr на один элемент вперед
(*ptr)++; // (или ++*ptr;) Увеличение на 1 значения переменной,
// на которую указывает указатель ptr
*ptr = NULL; // Очистка указателя рtr1
Инициализация указателя
1. Адресом переменной, которая уже определена и объявлена до объявления указателя.
int i; int *pi(&i);
2. Инициализировать указателем, эквивалентным нулю.
int *pi(nullptr);
Указатели на тип char
Данный указатель может быть проинициализирован строковым литералом.
char * pc = “ info ”;
Дата добавления: 2021-02-10; просмотров: 62; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!