#4 - Условные операторы. Условие if - else, а также switch case

#4 - Условные операторы. Условие if - else, а также switch case

Условные конструкции очень полезны, ведь позволяют выполнить проверку какого-либо условия и в зависимости от результата выполнить определенный код в программе. За урок мы научимся работать с оператором if else, а также switch case.

Видеоурок

Условные операторы очень важны, ведь они позволяют выполнять разный код в зависимости от исхода условия. В языке Си существует три конструкции позволяющих осуществлять проверку.


Конструкция if - else

За счёт if else можно проверить одно или несколько условий и в случае их успешной проверки будет выполнен один, иначе другой.


Рассмотрим пример:

int a = 2, b = 10;
if (a == b) { // Если a будет равным b, тогда будет выполнен код
	// Здесь код что будет выполнен
	// Если все одна строка кода, то фигурные скобки {}
	// можно не ставить
} else if (a <= b) { // Если а будет меньшим или равным b
	// Если предыдущее условие не будет выполнено,
	// а здесь условие окажется верным,
	// то будет выполнен этот код
} else {
	// Этот код сработает, если другие условия не будут выполнены
}

Вы можете прописать структуру лишь с одним условием if, а можете дописать в неё сколько-угодно вложенных условий else if.


Внутри каждого из условий можно прописывать другие конструкции if else, что будут проверять новые выражения.


Если необходимо проверить несколько условий в одном операторе, то можно воспользоваться логическим «и» или же логическим «или»:

if (a != b && a > b) {
	// Код будет выполнен, если и первое, и второе условие
	// окажутся верными
}

if (a < b || a == b) {
	// Код будет выполнен, если или первое, или второе условие
	// окажется верным
}

Тернарная операция

Это сокращенная форма if else. Записывается следующим образом:
int x = 90, a = 8;
int res = x < a ? (x + a) : (x - a);
printf("%d\n", res);
Проверяем: если “x” будет меньше “а”, то в переменную res устанавливаем их сумму, иначе – их разницу. 

Конструкция switch

Конструкция case обладает более удобным форматом для проверки множественных условий на совпадение значения. В конструкцию записывается переменная, что проверяется, а также значения на которые происходит проверка.


Пример оператора:

int x = 23;
switch (x) { // Проверяем переменную x
	case 1: // Если переменная будет равна 1, то здесь сработает код
		// Может быть множество строк, а не только одна
		printf("Переменная равна 1\n");
		break; // Указываем конец для кода для этой проверки
	case 56: // Если переменная будет равна 56, то здесь сработает код
		// Может быть множество строк, а не только одна
		printf("Переменная равна 56\n");
		break; // Указываем конец для кода для этой проверки
		// По аналогии таких проверок может быть множество
		// Также можно добавить проверку, которая сработает в случае
		// если все остальные проверки не сработают
	default:
		printf("Что-то другое\n");
		break; // Можно и не ставить, так как это последние условие
}

Исходный код

Весь код будет доступен после подписки на проект!

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца

Также стоит посмотреть

Уроки C++ WinForms / Создание программ на Windows
8 уроков
Создание приложения на React JS / Использование API
7 уроков
Практика React JS / Разработка магазина (eCommerce)
9 уроков
Уроки PhotoShop для начинающих
6 уроков
Создание сайта с нуля | Полноценная верстка сайта
11 уроков
Изучение React JS / Redux библиотеки
9 уроков
Комментарии (1)
Добавить комментарий

Микола 28 февраля 2023 в 22:21

В задании про создание калькулятора у вас не работает ожидание последнего ввода, потому что, там надо перед %c поставить пробел.
Было:
scanf("%c", &math_operation);

Стало:
Ответить