- •Алфавит языка
- •Идентификаторы
- •Структура программы
- •Переменные
- •Константы
- •Типы данных
- •Выражения и операции
- •Арифметические операции.
- •Выражения и операции
- •Операции отношения.
- •Логические операции.
- •Структура программы
- •Форматированный ввод с клавиатуры.
- •Scanf(“форматная_строка”, список_аргументов);
- •Форматированный вывод на экран.
- •Printf(“форматная_строка”, список_аргументов);
- •Операция присваивания.
- •Условный оператор if
- •If (выражение) оператор1; else оператор2;
- •If (выражение) оператор;
- •Оператор выбора (переключатель)
- •Операторы циклов
- •Цикл с предусловием while
- •Операторы циклов
- •Цикл с постусловием do-while
- •Операторы циклов
- •Цикл с параметром for
- •Массивы
- •Массивы
- •Одномерные массивы
- •Массивы
- •Массивы
- •Двумерные массивы
- •Массивы
- •Двумерные массивы
- •Операции над элементами двумерного массива
- •Функции
- •Функции
- •Ввод – вывод строк
- •Ввод – вывод строк
- •Структуры
- •Структуры
- •Функции работы с файлами
- •Указатели
- •Операции над указателями
- •Динамическое выделение памяти
Условный оператор if
Условный оператор IF обеспечивает выполнение или невыполнение некоторых операторов в зависимости от условия.
Алгоритмы, содержащие условные операторы, называют разветвляющимися.
В языке Си имеется две разновидности условного оператора: полная и неполная (простая).
Формат полного условного оператора:
If (выражение) оператор1; else оператор2;
Выражение — это условие, содержащее операции отношения и логические операции. Значение выражения приводится к целому и интерпретируется в соответствии с правилом: равно нулю — ложь, не равно нулю — истина.
Если выражение истинно, выполняется оператор1, если ложно — оператор2.
Необходимо обратить внимание на следующие особенности синтаксиса условного оператора:
• выражение записывается в круглых скобках;
• точка с запятой после оператора1 ставится обязательно.
• если вместо оператора1 или оператора2 необходимо выполнить несколько операторов (более одного), их необходимо заключить в фигурные скобки.
Графическая схема:
Формат неполного условного оператора:
If (выражение) оператор;
Графическая схема:
Один оператор IF может входить в состав другого оператора IF (вложенный оператор). При вложенности операторов каждое ELSE связывается с ближайшим к нему предыдущим IF, не содержащим ветвь ELSE.
Пример 1:
int a=1, x=1;
if (a<0)x=0;x-=3;
В результате работы данных операторов переменная x получит значение -2.
Пример 2:
int a=1, x=1;
if (a<0) {x=0;x-=3;}
В результате работы данных операторов значение переменной x останется равным 1.
Способы реализации условных алгоритмов в ЯП Си: оператор switch (формат записи, алгоритм работы, примеры).
Оператор выбора (переключатель)
Оператор switch (переключатель) предназначен для разветвления процесса вычислений на несколько направлений.
Формат оператора выбора:
switch (целочисленное_выражение)
{
case константа1: список_операторов1;
case константа2: список_операторов2;
… … …
default: список_операторов;
}
Последняя строка (default) может отсутствовать.
Вначале вычисляется выражение, значение которого должно быть целого или символьного типа. Это значение сравнивается со значениями констант и используется для выбора ветви, которую нужно выполнить.
Если значение выражения совпало с одной из перечисленных констант, то управление передается в соответствующую ветвь. После этого последовательно выполняются все остальные ветви.
Пример:
х=2; switch (x)
{
case 1:printf("1\n");
case 2:printf("2\n");
case 3:printf("3\n");
case 4:printf("4\n");
default: printf("0\n");
}
}
На экране будет выведено:
2
3
4
Все константы должны иметь разные значения, но быть одного и того же типа.
В случае несовпадения значения выражения ни с одной из констант выбора происходит переход на метку default либо, при ее отсутствии, к оператору, следующему за оператором switch.
Управляющий оператор break (разрыв) выполняет выход из оператора switch. Если по совпадению с каждой константой должна быть выполнена одна и только одна ветвь, схема оператора switch следующая:
switch (выражение)
{
case константа1: операторы 1; break;
case константа2: операторы 2; break;
… … …
case константаN: операторы N; break;
default: операторы (N+1);
}
Пример:
х=2; switch (x)
{
case 1:printf("1\n");break;
case 2:printf("2\n");break;
case 3:printf("3\n");break;
case 4:printf("4\n");break;
default: printf("0\n");
}
}
На экране будет выведено:
2
Способы реализации циклических алгоритмов в ЯП Си: оператор цикла while (формат записи, алгоритм работы, примеры).
