
- •Знаки операций
- •Литералы (константы)
- •Комментарии
- •Директивы препроцессора (основные).
- •Базовые типы данных.
- •Константы в программах на языке c.
- •Целочисленные константы
- •Константы вещественного типа
- •Символьные константы
- •Строковые константы
- •Функции вывода информации. Использование модификаторов и управляющих последовательностей.
- •Функции ввода информации.
- •Ввод-вывод потоками (cin, cout).
- •Синтаксис операторов языка c, операторы-выражения, управляющие операторы в языке с.
- •Арифметические операции, преобразование типов операндов арифметических операций. Операция "typedef".
- •Линейный алгоритм. Операции присваивания, разновидности сокращений записи операции присваивания.
- •Операции отношений (сравнения) и логические операции.
- •Логические операции
- •Операторы передачи управления goto, continue, break, return.
- •Ветвящийся алгоритм. Условный оператор if, условная операция «? :».
- •Оператор выбора альтернатив (переключатель) switch.
- •Операция "," (запятая).
- •Циклический алгоритм. Оператор с предусловием while. Понятие цикла
- •Оператор с предусловием while
- •Оператор цикла с постусловием do - while.
- •Оператор цикла с предусловием и коррекцией for.
- •Указатели как тип данных. Операции * и &. Операции над указателями.
- •Функции в с. Способы описания функции, операция вызова функции.
- •Особенности использования параметров функций.
- •Одномерные массивы.
Операции отношений (сравнения) и логические операции.
Операции сравнения
== - равно или эквивалентно;
!= - не равно;
< - меньше;
<= - меньше либо равно;
> - больше;
>= - больше либо равно.
Пары символов соответствующих операций разделять нельзя.
Общий вид операций отношений:
<выражение1> <знак_операции> <выражение2>
Общие правила:
- операндами могут быть любые базовые (скалярные) типы;
значения операндов после вычисления перед сравнением преобразуются к одному типу;
- результат операции отношения - целое значение 1, если отношение истинно, или 0 в противном случае. Следовательно, операция отношения может использоваться в любых арифметических выражениях.
Логические операции
Перечень логических операций в порядке убывания относительного приоритета и их обозначения:
! - отрицание (логическое НЕТ);
&& - коньюнкция (логическое И);
|| - дизьюнкция (логическое ИЛИ).
Общий вид операции отрицания:
!<выражение>
Общий вид операций коньюнкции и дизьюнкции
<выражение1> <знак_операции> <выражение2>
Например:
y>0 && x=7 истина, если 1-е и 2-е выражения истинны;
e>0 || x=7 истина, если хотя бы одно выражение истинно.
Ненулевое значение операнда трактуется как "истина", а нулевое - "ложь".
Например:
!0 1
!5 0
x=10;
!((x=y)>0) 0
Операторы передачи управления goto, continue, break, return.
Формально к операторам передачи управления относятся:
- оператор безусловного перехода goto;
- оператор перехода к следующему шагу (итерации) цикла continue;
- выход из цикла, либо оператора switch - break;
- оператор возврата из функции return.
В языке Си предусмотрен оператор goto, хотя в большинстве случаев можно обойтись без него. Общий вид оператора:
goto < метка >;
Он предназначен для передачи управления на оператор, помеченный меткой. Метка представляет собой идентификатор, оформленный по всем правилам идентификации переменных с символом «двоеточие» после него, например, пустой помеченный оператор:
m1: ;
Область действия метки - функция, где эта метка определена. В случае необходимости можно использовать блок.
Сontinue. Этот оператор может использоваться во всех типах циклов, но не в операторах переключателя switch. Наличие оператора continue вызывает пропуск "оставшейся" части итерации и переход к началу следующей, т.е. досрочное завершение текущего шага и переход к следующему шагу.
В циклах while и do это означает непосредственный переход к проверочной части. В цикле for управление передается на шаг коррекции, т.е. модификации выражения 3.
Фрагмент программы обработки только положительных элементов массива a, отрицательные значения пропускаются:
for ( i = 0; i<n; i++)
{ if( a[i]<0) continue;
... // обработка положительных элементов
}
Оператор continue часто используется, когда последующая часть цикла оказывается слишком сложной, так что рассмотрение условия, обратного проверяемому, приводит к слишком высокому уровню вложенности программы.
Оператор break производит экстренный выход из самого внутреннего цикла или оператора-переключателя switch, к которому он принадлежит, и передает управление первому оператору, следующему за текущим оператором.
Оператор return; производит досрочный выход из текущей функции. Он, так же возвращает значение результата функции: return <выражение>;
В функциях, не возвращающих результат, он неявно присутствует после последнего оператора. Значение выражения при необходимости преобразуется к типу возвращаемого функцией значения.