- •Вопросы к экзамену по дисциплине
- •6. Типы данных: целый, вещественный, символьный. Размеры данных.
- •7.Правила определения переменных в программе. Инициализация переменных.
- •10.Операции сдвига.
- •11.Операции отношения, логические операции.
- •Int I, j, k;
- •15.Приоритет операций и порядок вычисления выражений.
- •16.Функция форматированного вывода printf.
- •18.Операторы преобразования данных и операторы управления. Оператор простой и составной, блок.
- •(Последовательно выполняемые операторы)
- •19.Виды управляющих конструкций программы.
- •20.Операторы ветвления, условный оператор.
- •21.Оператор переключения(Switch).
- •22.Оператор цикла с заданным числом повторений.
- •23.Оператор цикла с предусловием.
- •24.Оператор цикла с постусловием.
- •25.Операторы прерывания и продолжения цикла.
- •26.Одномерные и многомерные массивы, их инициализация.
- •27.Указатели. Связь между указателями и массивами.
- •28.Операции над указателями и массивами.
- •29.Операции взятия адреса, обращения по адресу.
- •30.Определение функции. Возвращение значения: оператор return. Описание функции, вызов функции.
- •31.Аргументы функции: формальные и фактические. Передача аргументов, стек.
- •32.Рекурсивные программы.
- •33.Функции для работы со строками: сравнение, копирование.
- •47. Функции для работы со строками: поиск в строке.
- •34.Функции для работы со строками: преобразование форматов.
- •35.Локальные и глобальные переменные.
- •36.Классы памяти. Автоматические переменные. Внешние и статические переменные.
- •37. Декларация структур.
- •38. Инициализация и доступ к элементам структуры.
- •39. Вложенные структуры и массивы структур.
- •40. Указатели на структуры.
- •41.Файлы.Функции работы с указателем текущей позиции файла.
- •43.Функция чтения и записи в файл в построчном режиме.
- •44.Функция чтения и записи в файл в посимвольном режиме.
- •45.Функция чтения и записи двоичных файлов.
- •46.Списки.Операции над списками. Односвязные и двусвязные списки.
- •47.Реализация списка на основе массива структур.
- •48.Реализация списка на основе массива данных.
- •49.Очереди. Операции над очередями.
- •50.Реализация очереди на основе массива.
- •51.Стеки. Операции над стеками.
- •52.Реализация стека на основе массива.
- •53.Сортировка методом обмена(пузырька).
- •Анализ пузырьковой сортировки. Пузырьковая сортировка обладает несколькими характеристиками:
- •54.Методом выбора.
- •55.Методом вставки.
- •56.Методом Шелла.
- •57.Метод быстрой сортировки(Хоара).
18.Операторы преобразования данных и операторы управления. Оператор простой и составной, блок.
Оператор — это конструкция языка Си, которая вызывает выполнение действия.
В языке программирования Си существуют следующие операторы :
-простые операторы
-блоки операторов (блоки, составные операторы)
-управляющие операторы
Простой оператор или оператор-выражение — это выражение, заканчивающееся символом ; (точка с запятой).
Специальным случаем простого оператора является пустой оператор, который ничего не делает. Пустой оператор состоит из единственного символа ; (точка с запятой). Он используется в тех случаях, когда синтаксис языка требует наличия оператора там, где не требуется никаких действий.
Блок операторов (блок, составной оператор) — это последовательность операторов, заключенная в фигурные скобки {}.
Блок используется для объединения нескольких операторов в один оператор. После закрывающей фигурной скобки точка с запятой может не указываться. После открывающей фигурной скобки можно объявлять переменные. Такие переменные, называемые автоматическими, известны только внутри этого блока, после выхода из блока они больше неизвестны.
"Тело" функции также представляет собой блок операторов.
Управляющие операторы — операторы языка Си, реализующие ветвления алгоритма, циклы и передачу управления.
Все управляющие операторы начинаются с ключевого слова, такого как: if, while, for и т.д.
Операторы передачи управления:
Классы управляющих операторов в языке Си следующие:
- операторы условного и безусловного перехода;
- оператор выбора альтернатив (переключатель);
- операторы организации циклов;
- операторы передачи управления (перехода).
Каждый из управляющих операторов имеет конкретную лексическую кон-
струкцию, образуемую из ключевых слов языка С, выражений и символов-
разделителей: { } , : ( ) .
Операторы языка С записываются в свободном формате с использовани-
ем разделителей между ключевыми словами. Допустима вложенность операто-
ров. В случае необходимости можно использовать составной оператор - блок,
состоящий из любой последовательности операторов, заключенных в фигурные
скобки - { и }, после закрывающей скобки символ «;» не ставится.
Формально к операторам передачи управления относятся:
– оператор безусловного перехода goto;
– оператор перехода к следующему шагу (итерации) цикла continue;
– выход из цикла, либо из оператора switch – break;
- оператор возврата из функции return.
Простые операторы:
- пустой оператор «;» ;
- оператор присваивания - выполнение операций присваивания;
- оператор вызова функции - выполнение операции вызова функции.
Примеры простых операторов:
;
b=3;
a=b+7;
printf("%lf\n",a);
Если в программе не указано иное, то операторы выполняются по очереди, один за другим, сверху вниз по тексту программы. Но существуют операторы, меняющие последовательность выполнения других операторов. К ним относятся условные операторы, операторы цикла и перехода.
Составные операторы:
Составной оператор представляет собой несколько операторов и объявлений, заключенных в фигурные скобки:
{ [oбъявление] : оператор; [оператор]; : }
Заметим, что в конце составного оператора точка с запятой не ставится.
Выполнение составного оператора заключается в последовательном выполнении составляющих его операторов.
Пример:
int main () { int q,b; double t,d; : if (...) { int e,g; double f,q; : } : return (0); }
Переменные e,g,f,q будут уничтожены после выполнения составного оператора. Отметим, что переменная q является локальной в составном операторе, т.е. она никоим образом не связана с переменной q объявленной в начале функции main с типом int. Отметим также, что выражение стоящее после return может быть заключено в круглые скобки, хотя наличие последних необязательно.
Операторы преобразования данных: