Введение
В этом лабораторном практикуме вы научитесь выполнять основные арифметические операции, такие как умножение и деление, используя язык программирования C. Практикум охватывает следующие этапы:
Во-первых, вы узнаете, как объявлять переменные и вводить значения с помощью пользователя. Вы создадите простую программу, которая позволит пользователям ввести два числа, которые затем будут использованы для операций умножения и деления.
Далее, вы расширите программу для выполнения фактических вычислений умножения и деления, используя введённые значения. Программа отобразит результаты этих операций и также корректно обработает случай деления на ноль.
Объявление переменных и ввод значений
В этом шаге вы научитесь объявлять переменные и вводить значения для выполнения арифметических операций в программировании на языке C. Мы создадим простую программу, которая позволит пользователям ввести два числа для умножения и деления.
Сначала создадим новый файл C в каталоге ~/project:
cd ~/project
nano arithmetic_operations.c
Теперь введите следующий код:
#include <stdio.h>
int main() {
// Объявить переменные для хранения введённых чисел
float num1, num2;
// Запросить у пользователя первое число
printf("Enter the first number: ");
scanf("%f", &num1);
// Запросить у пользователя второе число
printf("Enter the second number: ");
scanf("%f", &num2);
// Вывести введённые числа
printf("First number: %.2f\n", num1);
printf("Second number: %.2f\n", num2);
return 0;
}
Давайте разберём код:
- Мы используем тип данных
float, чтобы позволить вводить десятичные числа. printf()используется для отображения запросов пользователю.scanf()считывает ввод пользователя и сохраняет его в переменные.%.2fформатирует вывод, отображая два знака после запятой.
Компилируем программу:
gcc arithmetic_operations.c -o arithmetic_operations
Запустите программу и введите некоторые примерные числа:
./arithmetic_operations
Пример вывода:
Enter the first number: 10.5
Enter the second number: 3.2
First number: 10.50
Second number: 3.20
Выполнение умножения и деления
В этом шаге вы расширите предыдущую программу для выполнения операций умножения и деления, используя введённые значения.
Откройте существующий файл arithmetic_operations.c:
cd ~/project
nano arithmetic_operations.c
Обновите код с операциями умножения и деления:
#include <stdio.h>
int main() {
// Объявить переменные для хранения введённых чисел и результатов
float num1, num2, multiply_result, divide_result;
// Запросить у пользователя первое число
printf("Enter the first number: ");
scanf("%f", &num1);
// Запросить у пользователя второе число
printf("Enter the second number: ");
scanf("%f", &num2);
// Выполнить умножение
multiply_result = num1 * num2;
printf("Умножение: %.2f * %.2f = %.2f\n", num1, num2, multiply_result);
// Выполнить деление
divide_result = num1 / num2;
printf("Деление: %.2f / %.2f = %.2f\n", num1, num2, divide_result);
return 0;
}
Скомпилируйте обновлённую программу:
gcc arithmetic_operations.c -o arithmetic_operations
Запустите программу и протестируйте умножение и деление:
./arithmetic_operations
Пример вывода:
Enter the first number: 10.5
Enter the second number: 3.2
Умножение: 10.50 * 3.20 = 33.60
Деление: 10.50 / 3.20 = 3.28
Ключевые моменты:
- Оператор
*выполняет умножение - Оператор
/выполняет деление - Результаты хранятся в отдельных переменных
%.2fформатирует вывод, отображая два знака после запятой
Обработка деления на ноль
В этом шаге вы узнаете, как обрабатывать деление на ноль, что является распространённой ошибкой в арифметических операциях, которая может привести к аварийному завершению программы.
Откройте существующий файл arithmetic_operations.c:
cd ~/project
nano arithmetic_operations.c
Обновите код для обработки деления на ноль:
#include <stdio.h>
int main() {
// Объявить переменные для хранения введённых чисел и результатов
float num1, num2, multiply_result, divide_result;
// Запросить у пользователя первое число
printf("Enter the first number: ");
scanf("%f", &num1);
// Запросить у пользователя второе число
printf("Enter the second number: ");
scanf("%f", &num2);
// Выполнить умножение
multiply_result = num1 * num2;
printf("Умножение: %.2f * %.2f = %.2f\n", num1, num2, multiply_result);
// Проверить деление на ноль перед выполнением деления
if (num2 != 0) {
divide_result = num1 / num2;
printf("Деление: %.2f / %.2f = %.2f\n", num1, num2, divide_result);
} else {
printf("Ошибка: Деление на ноль запрещено!\n");
}
return 0;
}
Скомпилируйте обновлённую программу:
gcc arithmetic_operations.c -o arithmetic_operations
Запустите программу и протестируйте различные сценарии:
Тестирование с ненулевым делителем:
./arithmetic_operations
Пример вывода (ненулевой делитель):
Enter the first number: 10.5
Enter the second number: 3.2
Умножение: 10.50 * 3.20 = 33.60
Деление: 10.50 / 3.20 = 3.28
Тестирование с нулём в качестве делителя:
./arithmetic_operations
Пример вывода (нулевой делитель):
Enter the first number: 10.5
Enter the second number: 0
Умножение: 10.50 * 0.00 = 0.00
Ошибка: Деление на ноль запрещено!
Ключевые моменты:
- Используйте оператор
if, чтобы проверить, равен ли делитель нулю. - Выведите понятное сообщение об ошибке.
- Предотвратите аварийное завершение программы, обработав случай деления на ноль.
Резюме
В этом лабораторном практикуме вы изучили, как объявлять переменные и вводить значения для выполнения арифметических операций в программировании на языке C. Вы создали простую программу, которая позволяет пользователям вводить два числа для умножения и деления. Вы также изучили, как выполнять операции умножения и деления, используя введённые значения, и как корректно обрабатывать деление на ноль, проверяя делитель на ноль перед выполнением операции деления.
Основные моменты, изученные в этом лабораторном практикуме:
- Объявление переменных для хранения введённых чисел и результатов
- Использование
printf()для отображения запросов иscanf()для чтения пользовательского ввода - Выполнение операций умножения и деления над введёнными значениями
- Обработка ошибки деления на ноль для предотвращения аварийного завершения программы



