0Pricing
C Academy · Урок

Отношения и логика

Сравнения и &&, ||

«Отношения и логика» — бесплатный урок C Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C Academy содержит 4 уроков всего.

Сравнение значений

Операторы сравнения сравнивают два значения и возвращают логическое значение: 1 для истины и 0 для лжи.

  • < меньше
  • > больше
  • <= меньше или равно
  • >= больше или равно
#include <stdio.h>
int main(void) {
    printf("3 < 5 = %d\n", 3 < 5);
    printf("3 > 5 = %d\n", 3 > 5);
    return 0;
}

Равенство и неравенство

Используйте == для проверки равенства, а != — для проверки неравенства. Не путайте == с оператором присваивания =.

#include <stdio.h>
int main(void) {
    int a = 4, b = 4;
    printf("a == b = %d\n", a == b);
    printf("a != b = %d\n", a != b);
    return 0;
}

Логические значения — это целые числа

По умолчанию в C нет отдельного логического типа. Результатом сравнения становятся целочисленные значения 1 или 0. В условии любое ненулевое значение считается истинным.

#include <stdio.h>
int main(void) {
    int result = (10 > 2);
    printf("result = %d\n", result);
    return 0;
}

Логический AND

Оператор && истинен только тогда, когда оба операнда истинны.

#include <stdio.h>
int main(void) {
    int age = 25;
    if (age > 18 && age < 65)
        printf("Working age\n");
    return 0;
}

Логический OR

Оператор || истинен, когда истинен хотя бы один операнд.

#include <stdio.h>
int main(void) {
    int day = 6;
    if (day == 6 || day == 7)
        printf("Weekend\n");
    return 0;
}

Логический NOT

Оператор ! меняет логическое значение на противоположное. !0 равно 1, а !5 равно 0.

#include <stdio.h>
int main(void) {
    int loggedIn = 0;
    if (!loggedIn)
        printf("Please log in\n");
    return 0;
}

Вычисление с коротким замыканием

C использует вычисление с коротким замыканием: для && правая часть пропускается, если левая ложна; для || она пропускается, если левая истинна.

#include <stdio.h>
int main(void) {
    int x = 0;
    if (x != 0 && 10 / x > 1)
        printf("safe\n");
    else
        printf("division skipped\n");
    return 0;
}

Объединение условий

Вы можете сочетать операторы сравнения и логические операторы, чтобы формулировать сложные условия.

#include <stdio.h>
int main(void) {
    int score = 75;
    if (score >= 50 && score < 80)
        printf("Pass\n");
    return 0;
}

Отрицание сравнений

! может охватывать целое сравнение. !(a == b) означает то же самое, что и a != b.

#include <stdio.h>
int main(void) {
    int a = 3, b = 5;
    printf("%d\n", !(a == b));
    return 0;
}

Цепочки сравнений — не математика

В отличие от математики, 1 < x < 10 не означает того, что Вы ожидаете. Выражение вычисляется слева направо как последовательность сравнений. Вместо этого используйте x > 1 && x < 10.

#include <stdio.h>
int main(void) {
    int x = 50;
    if (x > 1 && x < 10)
        printf("in range\n");
    else
        printf("out of range\n");
    return 0;
}

Пример принятия решения

Объединим всё изученное, чтобы классифицировать число.

#include <stdio.h>
int main(void) {
    int n = -4;
    if (n > 0)
        printf("positive\n");
    else if (n < 0)
        printf("negative\n");
    else
        printf("zero\n");
    return 0;
}

Проверка понимания

Проверьте, насколько хорошо Вы понимаете операторы сравнения и логические операторы.

Повторение: операторы сравнения и логические операторы

Вы узнали, как сравнивать значения и объединять условия.

  • Операторы сравнения возвращают 1 или 0
  • == != проверяют равенство; никогда не путайте == с =
  • && || ! объединяют логические значения
  • Вычисление с коротким замыканием может пропустить второй операнд
  • Объединяйте условия с помощью явного &&

Часто задаваемые вопросы

Урок «Отношения и логика» бесплатный?

Да — полный текст урока «Отношения и логика» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C Academy, подпишись на CoddyKit PRO. Курс C Academy содержит 4 уроков всего.

Чему я научусь в уроке «Отношения и логика»?

Сравнения и &&, || Ты практикуешь C Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать C Academy?

Предыдущий опыт не требуется. C Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Отношения и логика»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке C Academy?

Да. Каждый урок C Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Арифметические операторы
  2. Отношения и логика
  3. Присваивание и приращение
  4. Приоритет операторов
← Назад к C Academy