Арифметические операторы
+, -, *, /, %
«Арифметические операторы» — бесплатный урок C Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C Academy содержит 4 уроков всего.
Арифметика в C
C предоставляет привычные повседневные математические операторы. С их помощью можно превращать переменные в выражения, вычисляющие новые значения.
+сложение-вычитание*умножение/деление%остаток от деления
#include <stdio.h>
int main(void) {
int a = 7, b = 3;
printf("a + b = %d\n", a + b);
printf("a - b = %d\n", a - b);
return 0;
}Умножение
Оператор * перемножает два значения. Тип результата определяется операндами, поэтому два значения типа int дают результат типа int.
#include <stdio.h>
int main(void) {
int width = 4, height = 5;
int area = width * height;
printf("Area = %d\n", area);
return 0;
}Целочисленное деление
Когда оба операнда являются целыми числами, / выполняет целочисленное деление и отбрасывает дробную часть.
Поэтому 7 / 2 даёт 3, а не 3.5.
#include <stdio.h>
int main(void) {
int x = 7, y = 2;
printf("7 / 2 = %d\n", x / y);
return 0;
}Деление с плавающей точкой
Чтобы сохранить дробную часть, сделайте хотя бы один операнд значением с плавающей точкой. Тогда / выполнит обычное деление.
#include <stdio.h>
int main(void) {
double x = 7.0, y = 2.0;
printf("7.0 / 2.0 = %.2f\n", x / y);
return 0;
}Оператор остатка от деления
Оператор % возвращает остаток от целочисленного деления. Он работает только с целочисленными операндами.
7 % 3 равно 1, потому что 7 = 2*3 + 1.
#include <stdio.h>
int main(void) {
printf("7 %% 3 = %d\n", 7 % 3);
printf("10 %% 5 = %d\n", 10 % 5);
return 0;
}Применение остатка от деления: чётность числа
Распространённый приём: число является чётным, если n % 2 == 0, и нечётным в противном случае.
#include <stdio.h>
int main(void) {
int n = 9;
if (n % 2 == 0)
printf("%d is even\n", n);
else
printf("%d is odd\n", n);
return 0;
}Унарный минус
Оператор - также может работать как унарный оператор, меняющий знак значения на противоположный.
#include <stdio.h>
int main(void) {
int temp = 5;
printf("Negated: %d\n", -temp);
return 0;
}Смешивание типов int и double
При смешивании типов C перед вычислением преобразует int в double. Это называется продвижением типа.
#include <stdio.h>
int main(void) {
int a = 5;
double b = 2.0;
printf("Result = %.2f\n", a / b);
return 0;
}Деление на ноль
Целочисленное деление или вычисление остатка по модулю нуля — это неопределённое поведение в C, которое обычно приводит к аварийному завершению программы. Всегда проверяйте, что делитель не равен нулю.
#include <stdio.h>
int main(void) {
int n = 10, d = 0;
if (d != 0)
printf("%d\n", n / d);
else
printf("Cannot divide by zero\n");
return 0;
}Объединение операторов
Вы можете объединять операторы, чтобы создавать более крупные выражения. C вычисляет их в соответствии с правилами приоритета, которые Вы скоро изучите.
#include <stdio.h>
int main(void) {
int total = 2 + 3 * 4 - 1;
printf("total = %d\n", total);
return 0;
}Небольшой калькулятор
Объединим всё вместе: прочитаем два значения в переменные и сразу выведем несколько арифметических результатов.
#include <stdio.h>
int main(void) {
int a = 12, b = 5;
printf("Sum: %d\n", a + b);
printf("Diff: %d\n", a - b);
printf("Quot: %d\n", a / b);
printf("Rem: %d\n", a % b);
return 0;
}Проверка понимания
Проверьте, насколько хорошо Вы понимаете арифметические операторы.
Повторение: арифметические операторы
Вы изучили пять арифметических операторов в C.
+ - *работают ожидаемым образом/усекает результат для целых чисел, но даёт действительный результат для чисел с плавающей точкой%возвращает остаток и работает только с целыми числами- При смешивании типов выполняется продвижение к более широкому типу
- Никогда не делите на ноль
Часто задаваемые вопросы
Урок «Арифметические операторы» бесплатный?
Да — полный текст урока «Арифметические операторы» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C Academy, подпишись на CoddyKit PRO. Курс C Academy содержит 4 уроков всего.
Чему я научусь в уроке «Арифметические операторы»?
+, -, *, /, % Ты практикуешь C Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать C Academy?
Предыдущий опыт не требуется. C Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Арифметические операторы»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке C Academy?
Да. Каждый урок C Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Арифметические операторы
- Отношения и логика
- Присваивание и приращение
- Приоритет операторов