Введение
В этом практическом занятии (лабораторной работе) мы напишем программу на языке C, которая вычисляет площадь и длину окружности. Эта простая программа демонстрирует несколько фундаментальных концепций программирования, включая объявление переменных, обработку пользовательского ввода, математические вычисления и форматированный вывод.

Мы будем использовать следующие математические формулы:
- Площадь круга = π × радиус²
- Длина окружности = 2 × π × радиус
По завершении этого практического занятия вы напишете полноценную программу на языке C, которая принимает пользовательский ввод и выполняет вычисления с использованием этих формул.
Создание файла программы и базовой структуры
Начнем с создания файла нашей программы на языке C и настройки базовой структуры. Мы создадим файл с именем circle.c в каталоге ~/project/circle_program.
Перейдите в каталог проекта:
cd ~/project/circle_programСоздайте новый файл с именем
circle.cс помощью редактора WebIDE. Нажмите на меню "File" в верхней части WebIDE, затем выберите "New File". В качестве альтернативы вы можете щелкнуть правой кнопкой мыши в панели проводника файлов и выбрать "New File".Назовите файл
circle.cи сохраните его в каталоге~/project/circle_program.Теперь добавим базовую структуру нашей программы на языке C в файл:
#include <stdio.h> int main() { // We will add our code here return 0; }
В приведенном выше коде:
#include <stdio.h>- это препроцессорная директива, которая сообщает компилятору включить стандартную библиотеку ввода-вывода (Standard Input/Output library), которая предоставляет такие функции, какprintf()иscanf().int main()определяет главную функцию, которая является точкой входа в любую программу на языке C.- Фигурные скобки
{ }обозначают начало и конец тела главной функции. return 0;указывает, что программа успешно выполнилась.
- Сохраните файл, нажав Ctrl+S или используя меню "File" и выбрав "Save".
Объявление переменных и констант
Теперь, когда у нас есть базовая структура программы, добавим переменные и константы, необходимые для наших вычислений.
Откройте файл
circle.cв редакторе (если он еще не открыт).Нам понадобятся несколько переменных:
- Переменная для хранения радиуса круга
- Константа для хранения значения π (пи)
- Переменные для хранения вычисленной площади и длины окружности
Обновите свой код следующим образом:
#include <stdio.h> int main() { // Declare variables and constants float radius; // to store the radius of the circle const float PI = 3.14159; // the mathematical constant π (pi) float area; // to store the calculated area float circumference; // to store the calculated circumference return 0; }
Понять объявления переменных:
float radius;- Мы используем тип данныхfloat, так как радиус может быть десятичным числом.const float PI = 3.14159;- Мы определяем PI как константу, так как ее значение не должно изменяться во время выполнения программы. Ключевое словоconstобеспечивает это.float area;иfloat circumference;- Эти переменные будут хранить результаты наших вычислений, которые могут быть десятичными числами.
В программировании на языке C обычно все переменные объявляются в начале функции. Эта практика делает программу более организованной и легкой для понимания.
- Сохраните файл (Ctrl+S).
Получение пользовательского ввода
Теперь добавим код, который попросит пользователя ввести радиус круга и прочитает его ввод.
Откройте файл
circle.cв редакторе (если он еще не открыт).Добавьте код для запроса у пользователя ввода и чтения этого ввода:
#include <stdio.h> int main() { // Declare variables and constants float radius; // to store the radius of the circle const float PI = 3.14159; // the mathematical constant π (pi) float area; // to store the calculated area float circumference; // to store the calculated circumference // Prompt user for radius printf("Please enter the radius of the circle: "); // Read the radius value from user input scanf("%f", &radius); // Validate input (optional but good practice) if (radius <= 0) { printf("Error: Radius must be a positive number\n"); return 1; // Exit with error code } return 0; }
Понять, что мы добавили:
printf("Please enter the radius of the circle: ");- Это выводит сообщение, в котором просит пользователя ввести радиус.scanf("%f", &radius);- Это читает вещественное значение от пользователя и сохраняет его в переменнойradius.%f- это спецификатор формата для вещественных чисел.&radiusпередает адрес памяти переменнойradius, позволяя функцииscanf()изменить ее значение.
- Мы добавили простую проверку валидации, чтобы убедиться, что радиус положительный, так как у круга не может быть нулевого или отрицательного радиуса.
Функция scanf() используется для чтения форматированного ввода со стандартного ввода (клавиатуры). Важно использовать правильный спецификатор формата (%f для типа float) и передавать адрес переменной с помощью оператора &.
- Сохраните файл (Ctrl+S).
Вычисление площади и длины окружности
Теперь, когда у нас есть радиус, мы можем вычислить площадь и длину окружности с использованием наших формул.
Откройте файл
circle.cв редакторе (если он еще не открыт).Добавьте код для вычислений:
#include <stdio.h> int main() { // Declare variables and constants float radius; // to store the radius of the circle const float PI = 3.14159; // the mathematical constant π (pi) float area; // to store the calculated area float circumference; // to store the calculated circumference // Prompt user for radius printf("Please enter the radius of the circle: "); // Read the radius value from user input scanf("%f", &radius); // Validate input if (radius <= 0) { printf("Error: Radius must be a positive number\n"); return 1; // Exit with error code } // Calculate the area of the circle area = PI * radius * radius; // Calculate the circumference of the circle circumference = 2 * PI * radius; return 0; }
Понять, как выполняются вычисления:
area = PI * radius * radius;- Это вычисляет площадь по формуле π × r², где r - это радиус.circumference = 2 * PI * radius;- Это вычисляет длину окружности по формуле 2 × π × r.
В языке C оператором умножения является *. Чтобы вычислить r², мы просто умножаем радиус на самого себя (radius * radius). Для более сложных математических операций мы бы использовали функции из библиотеки math.h, но наши вычисления достаточно просты и без нее.
- Сохраните файл (Ctrl+S).
Вывод результатов и тестирование программы
Давайте завершим нашу программу, добавив код для отображения результатов, а затем скомпилируем и запустим ее, чтобы убедиться, что она работает правильно.
Откройте файл
circle.cв редакторе (если он еще не открыт).Добавьте код для отображения результатов:
#include <stdio.h> int main() { // Declare variables and constants float radius; // to store the radius of the circle const float PI = 3.14159; // the mathematical constant π (pi) float area; // to store the calculated area float circumference; // to store the calculated circumference // Prompt user for radius printf("Please enter the radius of the circle: "); // Read the radius value from user input scanf("%f", &radius); // Validate input if (radius <= 0) { printf("Error: Radius must be a positive number\n"); return 1; // Exit with error code } // Calculate the area of the circle area = PI * radius * radius; // Calculate the circumference of the circle circumference = 2 * PI * radius; // Display the results printf("\nResults for a circle with radius %.2f units:\n", radius); printf("Area: %.2f square units\n", area); printf("Circumference: %.2f units\n", circumference); return 0; }
Понять код вывода:
printf("\nResults for a circle with radius %.2f units:\n", radius);- Это отображает радиус с двумя знаками после запятой.printf("Area: %.2f square units\n", area);- Это отображает вычисленную площадь с двумя знаками после запятой.printf("Circumference: %.2f units\n", circumference);- Это отображает вычисленную длину окружности с двумя знаками после запятой.
Спецификатор формата %.2f сообщает функции printf(), что нужно отображать вещественные числа с двумя знаками после запятой, что делает вывод более читаемым.
Сохраните файл (Ctrl+S).
Теперь скомпилируем программу. В терминале перейдите в каталог проекта и используйте компилятор
gcc:cd ~/project/circle_program gcc circle.c -o circleОпция
-o circleсообщает компилятору создать исполняемый файл с именемcircle.Если компиляция прошла успешно, вы можете запустить программу с помощью команды:
./circleКогда появится запрос, введите значение радиуса (например, 5) и нажмите Enter. Вы должны увидеть вывод, похожий на следующий:
Please enter the radius of the circle: 5 Results for a circle with radius 5.00 units: Area: 78.54 square units Circumference: 31.42 unitsПопробуйте запустить программу еще раз с разными значениями радиуса, чтобы убедиться, что она работает правильно.
Поздравляем! Вы успешно создали программу на языке C, которая вычисляет и отображает площадь и длину окружности круга на основе пользовательского ввода.
Резюме
В этом практическом занятии вы успешно создали программу на языке C, которая:
- Запрашивает у пользователя ввод радиуса круга
- Читает и проверяет корректность пользовательского ввода
- Вычисляет площадь круга по формуле π × r²
- Вычисляет длину окружности круга по формуле 2 × π × r
- Отображает вычисленные результаты с правильным форматированием
В процессе вы изучили несколько важных концепций программирования на языке C:
- Включение заголовочных файлов с помощью
#include - Определение и использование переменных и констант
- Чтение пользовательского ввода с помощью
scanf() - Выполнение математических вычислений
- Отображение отформатированного вывода с помощью
printf() - Компиляцию и запуск программы на языке C
Эти фундаментальные навыки являются основой для создания более сложных программ на языке C. Теперь вы можете расширять свои знания и создавать более сложные приложения, которые предполагают взаимодействие с пользователем и выполнение математических вычислений.



