- •1. Структура программы на языке Си. Алфавит языка. Базовые типы данных
- •2.Константы в программах
- •3.Операции, выражения Операция приведения типа Операции отношения.
- •Include — вставляет текст из указанного файла
- •Ifdef — осуществляет условную компиляцию при определённости символической константы
- •Ifndef — осуществляет условную компиляцию при неопределённости символической константы
- •5. Функции ввода-вывода printf() и scanf(). Ввод-Вывод символьных и строковых данных. . Потоковый ввод-вывод
- •7. Операторы передачи управления
- •8.Арифметические операции. Преобразование типов при выполнении операций. Операция присваивания. . Операция присваивания и ее сокращенные формы.
- •9.Операции отношений и логические операции. Операции сравнения
- •10. Операторы безусловной и условной передачи управления. .
- •11.Операции «,» и «?».
- •12. Характеристика базовых типов, операции с ними, инициализация данных.
- •13. Организация циклических алгоритмов. Операторы цикла.. Вложенные циклы. Операторы continue, break и return
- •14.Функции exit и abort
- •15. Оператор выбора альтернатив (переключатель)
- •16. Символьные строки. Способы задания строк. Ввод и вывод строк. Основные функции работы со строками. . Ввод-Вывод символьных и строковых данных
- •17. Общая характеристика стандартных математических функций (библиотека math.H).
- •18. Одномерный массив - описание, инициализация, обращение к элементам
- •19.Указатели, операции «*» и «&».Операция sizeof
- •*Операция sizeof
- •20. Инициализация указателей
- •1. Указатель на объект известного типа. Содержит адрес объекта опреде-ленного типа.
- •2. Указатель типа void. Применяется, еcли тип объекта заранее не опреде-лен.
- •3. Указатель на функцию. Адрес, по которому передается управление при вызове функции.
- •21. Указатели на указатели. Многомерные массивы. Адресная функция
- •22. Связь указателей с массивами.
- •25. Указатель на функции. Массив указателей на функции
- •26. Классы памяти и область действия переменных. Классы памяти, атрибуты auto, register, static, extern.
- •27. Структуры. Шаблон структуры. Способы обращения к полям структуры.
- •Тип_элемента_1 имя_элемента_1; тип_элемента_2 имя_элемента_2;
- •Тип_элемента_n имя_элемента_n;
- •29. Работа с динамической памятью. Операции new, delete
- •30. Работа с файлом. Необходимые действия при обработке файлов.
- •31. Работа с файлами. Открытие, закрытие файлов
- •32.Основные функции обработки файлов. Функции произвольного доступа
- •33.Вложенные структуры
- •34.Массивы структур
- •35.Размещение структурных переменных в памяти
- •36.Объединения
- •37.Перечисления
- •38.Позиционирование в файле
9.Операции отношений и логические операции. Операции сравнения
*логические операции
Перечень логических операций в порядке убывания относительного приоритета и их обозначения:
! - отрицание (логическое НЕТ);
&& - коньюнкция (логическое И);
|| - дизьюнкция (логическое ИЛИ).
Общий вид операции отрицания:
!<выражение>
Общий вид операций коньюнкции и дизьюнкции
<выражение1> <знак_операции> <выражение2>
*Операции сравнения
== - равно или эквивалентно;
!= - не равно;
< - меньше;
<= - меньше либо равно;
> - больше;
>= - больше либо равно.
Пары символов соответствующих операций разделять нельзя.
Общий вид операций отношений:
<выражение1> <знак_операции> <выражение2>
Общие правила:
- операндами могут быть любые базовые (скалярные) типы;
значения операндов перед сравнением преобразуются к одному типу;
- результат операции отношения - целое значение 1, если отношение истинно, или 0 в противном случае. Следовательно, операция отношения может использоваться в любых арифметических выражениях.
10. Операторы безусловной и условной передачи управления. .
*Оператор безусловного перехода goto
В языке Си предусмотрен оператор goto, общий вид которого:
goto метка ;
Он предназначен для передачи управления оператору, помеченному указанной меткой. Метка представляет собой идентификатор с символом «двоеточие» после него, например, пустой помеченный меткой m1 оператор:
m1: ;
Циклы и переключатели можно вкладывать вдруг в друга, и наиболее характерный оправданный случай использования оператора goto – выполнение прерывания (организация выхода) из вложенных циклов. Например, при обнаружении грубых смысловых ошибок необходимо выйти из двух (или более) вложенных циклов (где нельзя использовать непосредственно оператор break, т.к. он прерывает только самый внутренний цикл):
for (...)
for (...) {
...
if (ошибка) goto error;
}
...
error: операторы для устранения ошибки
*Оператор условной передачи управления if
Форматы оператора if:
1. Полная форма: if (логическое_выражение) оператор_1;
else оператор_2;
Если логическое выражение истинно, то выполняется оператор_1, иначе – оператор_2.
2. Сокращенная форма: if (логическое_выражение) оператор_1;
Если логическое_выражение истинно, то выполняется оператор_1.
3. Вложенная форма:
if (логическое_выражение_1) оператор_1;
else if (логическое_выражение_2) оператор_2;
else оператор_3;
Если логическое_выражение_1 истинно, то выполняется оператор_1, иначе, если логическое_выражение_2 истинно, то выполняется опера-тор_2, иначе выполняется оператор_3.
11.Операции «,» и «?».
Операция «,» (запятая)
Данная операция используется для организации заданной последовательности вычисления выражений (обычно используется там, где по синтаксису допустима только одна операция, а необходимо разместить две и более, например, в операторе for). Форма записи:
выражение_1, …, выражение_N;
выражения 1, 2,…, N вычисляются последовательно друг за другом и результатом операции становится значение последнего выражения N, например:
m = ( i = 1, j = i ++, k = 6, n = i + j + k );
получим последовательность вычислений: i =1, j =i =1, i =2, k=6, n=2+1+6, и в результате m=n=9.
. Условная операция «? :»
Если одно и то же выражение (или переменная) вычисляется по-разному в зависимости от некоторого условия, вместо оператора if можно использовать более короткую запись - условную операцию. Эта операция – тернарная, т.е. в ней участвуют три операнда. Формат написания условной операции следующий:
Выражение 1 ? выражение 2 : выражение 3;
если выражение 1 (условие) отлично от нуля (истинно), то результатом операции является значение выражения 2, в противном случае – значение выражения 3. Каждый раз вычисляется только одно из выражений 2 или 3.
На рисунке приведена схема вычисления результата, которая аналогична схеме полного оператора if (см. рисунок):