- •1. Основные типы данных. Целый, символьный, вещественный, voit
- •2. Структура программы. Примеры простейшей программы, использующей ввод/вывод на экран(сложить 2 числа)
- •2.3. Константы
- •3.1. Условный оператор
- •3.2. Оператор множественного выбора
- •1.4. Операторы
- •1.4.1. Оператор выражение
- •1.4.2. Пустой оператор
- •1.4.3. Составной оператор
- •1.4.4. Оператор if
- •1.4.5. Оператор switch
- •1.4.6. Оператор break
- •1.4.7. Оператор for
- •1.4.8. Оператор while
- •1.4.9. Оператор do while
- •1.4.10. Оператор continue
- •1.4.11. Оператор return
- •1.4.12. Оператор goto
- •6. Статические массивы(умножение матриц) двумерные статические массивы (матрицы).
- •Заполнение матриц.
- •Вывод элементов двумерных массивов.
- •Организация символьного одномерного массива в виде матрицы символов.
- •Квадратные матрицы. Работа с диагональными элементами.
- •Транспонирование матриц.
- •Умножение матрицы на вектор.
- •Умножение матрицы на матрицу.
- •Удаление строк матриц.
- •Включение столбца в матрицу.
- •Преобразование матрицы.
- •Преобразование матрицы в одномерный массив.
- •3.6. Описание и определение функций.
- •Лекция 6. Технология программирования OpenMp
3.2. Оператор множественного выбора
Язык Си имет встроенный оператор множественного выбора, называемый switch. Основная форма оператора имеет вид:
/* Пример 11 */ switch(выражение){ case constant1: последовательность операторов; break; case constant2: последовательность операторов; break; ... default: последовательность операторов; } |
|
Допускается конструкция оператора switch, когда слово default и соответствующая последовательность операторов может отсутствовать.
Ещё один не встречавшийся ранее оператор - break. Когда после одного или нескольких операторов встречается ключевое слово break, то его выполнение приводит к выходу из оператора switch и переходу к следующей инструкции. Наличие оператора break в операторе switch необязательно. Оператор break заканчивает последовательность операторов, относящихся к каждой метке. Если же оператор break отсутствует, то выполнение switch продолжается до первого встретившегося break либо до конца самого оператора switch. Рассмотрим две программы с использованием оператора break и без него:
#include<stdio.h> /* Пример 12 */ main() { char ch; pitntf("Введите заглавную букву русского алфавита ..."); ch=getchar(); /*Вводим один символ*/ if(ch>='A' && ch<='Я') /*Проверяем, пренадлежит ли значение ch диапазону допустимых значений в программе*/ { switch(ch) { case 'A': printf("Андреев\n"); break; case 'Б': printf("Булгаков\n"); break; case 'В': printf("Волошин\n"); break; case 'Г': printf("Гоголь\n"); break; default: printf("Достоевский и т.д...\n"); break; } else ptintf("Надо было ввести заглавную букву."); } |
|
#include<stdio.h> /* Пример 13 */ main() { char ch; pitntf("Введите заглавную букву русского алфавита ..."); ch=getchar(); /*Вводим один символ*/ if(ch>='A' && ch<='Я') /*Проверяем, пренадлежит ли значение ch диапазону допустимых значений в программе*/ { switch(ch) { case 'A': printf("Андреев\n"); case 'Б': printf("Булгаков\n"); case 'В': printf("Волошин\n"); case 'Г': printf("Гоголь\n"); default: printf("Достоевский и т.д...\n"); } else ptintf("Надо было ввести заглавную букву."); } |
|
Предположим, вы запустили первую программу и ввели букву Б. Результатом выполнения будет строка: Булгаков. Т.е. выполняется только один оператор, соответствующий метке 'Б .