- •Введение
- •Лабораторная работа №1
- •4.2. Общая структура программы.
- •4.3. Вывод строки на экран
- •4.4. Ввод с клавиатуры
- •4.5. Комментарии
- •4.7. Переменные
- •Управляющие символьные константы
- •4.8. Операторы
- •4.8.1 Арифметические операторы
- •Арифметические операторы
- •4.8.2 Операторы сравнения и логические операторы
- •Операторы сравнения и логические операторы
- •4.8.3 Побитовые операторы
- •Побитовые операторы
- •Лабораторная работа №2 Разработка программы с применением
- •1. Задание по работе
- •2. Порядок выполнения работы
- •3. Содержание отчета
- •4. Краткое описание
- •4.1. Оператор выражение
- •4.4.2. Оператор switch
- •4.5. Операторы перехода
- •4.5.1. Оператор break
- •4.5.2. Оператор continue
- •4.5.3. Оператор return
- •4.5.4. Оператор goto
- •4.6. Операторы цикла
- •4.6.1. Оператор for
- •4.6.2. Оператор while
- •4.6.3. Оператор do..While
- •Лабораторная работа №3 Разработка программы обработки массива
- •1. Задание по работе
- •2. Порядок выполнения работы
- •3. Содержание отчета
- •4. Краткое описание
- •4.1. Массивы
- •4.1.1. Инициализация массивов
- •4.2. Строки
- •4.3. Понятие функции
- •4.3.1. Определение функции
- •4.3.2. Класс памяти
- •4.3.3. Тип возвращаемого значения
- •4.3.4. Формальные параметры
- •4.3.5. Тело функции
- •4.3.6. Фактические параметры
- •4.3.7. Рекурсивные вызовы
- •4.3.8. Передача параметров
- •4.3.9. Библиотека стандартных функций
- •4.2. Проектирование диалоговой панели.
- •4.3. Связывание элементов управления
- •4.2. Создание меню программы
- •4.3. Проектирование диалоговой панели
- •4.4. Связывание событий с элементами управления
- •4.4.1. Связывание переменной с окном редактирования.
- •4.4.2. Связывание кода с событием en_change окна редактирования
- •4.4.3. Связывание кода с пунктом CurrentSpeed меню File
- •4.4.4. Связывание кода с пунктом About меню Help
- •Библиографический список
4.4.2. Оператор switch
Оператор switch предназначен для организации выбора из множества различных вариантов.
Формат оператора следующий:
switch (выражение)
{ [объявление]
:
[ case константное-выражение1]: [список-операторов1]
[ case константное-выражение2]: [список-операторов2]
:
:
:
[ default: [список операторов]]
}
Выражение, следующее за ключевым словом switch в круглых скобках, может быть любым выражением, допустимыми в языке C/C++, значение которого должно быть целым. Так как константное выражение вычисляется во время трансляции, оно не может содержать переменные или вызовы функций. Обычно в качестве константного выражения используются целые или символьные константы.
Все константные выражения в операторе switch должны быть уникальны. Кроме операторов, помеченных ключевым словом case, может быть, но обязательно один, фрагмент, помеченный ключевым словом default. Список операторов может быть пустым, либо содержать один или более операторов. Причем в операторе switch не требуется заключать последовательность операторов в фигурные скобки.
Схема выполнения оператора switch следующая:
- вычисляется выражение в круглых скобках;
- вычисленные значения последовательно сравниваются с константными выражениями, следующими за ключевыми словами case;
- если одно из константных выражений совпадает со значением выражения, то управление передается на оператор, помеченный соответствующим ключевым словом case;
- если ни одно из константных выражений не равно выражению, то управление передается на оператор, помеченный ключевым словом default, а в случае его отсутствия управление передается на следующий после switch оператор.
Для того, чтобы выполнить одни и те же действия для различных значений выражения, можно пометить один и тот же оператор несколькими ключевыми словами case.
Пример:
int i=2;
switch (i)
{
case 1: i += 2;
case 2: i *= 3;
case 0: i /= 2;
case 4: i -= 5;
default: ;
}
Операторы switch могут быть вложены друг в друга, даже если константы разделов case внешнего и внутреннего операторов switch совпадают, проблемы не возникают.
4.5. Операторы перехода
4.5.1. Оператор break
Оператор break обеспечивает прекращение выполнения самого внутреннего из объединяющих его операторов switch, do, for, while. После выполнения оператора break управление передается оператору, следующему за прерванным.
Функция exit () не относится к управляющим операторам, настало время ее изучить. Вызов стандартной библиотечной функции exit () приводит к прекращению работы программы и передаче управления операционной системе.
Функция exit () выглядит следующим образом.
void exit(int код_возврата);
Значение переменной код_возврата передается вызывающему процессу, в роли которого чаще всего выступает операционная система.
4.5.2. Оператор continue
Оператор continue, как и оператор break, используется только внутри операторов цикла, но в отличие от него выполнение программы продолжается не с оператора, следующего за прерванным оператором, а с начала прерванного оператора.
Пример:
int main()
{
int a,b;
for (a=1,b=0; a<100; b+=a,a++)
{
if (b%2) continue;
... /* обработка четных сумм */
}
return 0;
}
Когда сумма чисел от 1 до а становится нечетной, оператор continue передает управление на очередную итерацию цикла for, не выполняя операторы обработки четных сумм. Оператор continue, как и оператор break, прерывает самый внутренний из объемлющих его циклов.