Напечатать время года по номеру месяца - C (СИ)
Формулировка задачи:
Ввести номер месяца(1.....12), напечатать время года(зима.....осень)
Решение задачи: «Напечатать время года по номеру месяца»
textual
Листинг программы
using namespace std;
#include <iostream>
void main()
{
setlocale( LC_ALL,"Russian" );
char *times[]={"Зима", "Зима", "Весна", "Весна", "Весна", "Лето", "Лето", "Лето", "Осень", "Осень", "Осень", "Зима"};
int Month;
cout << "Введите номер месяца:";
cin >> Month;
if (Month>=1 && Month <=12)
cout << times[Month-1] << endl;
else
cout << "Ошибка ввода!";
system("pause");
}
Объяснение кода листинга программы
Объяснение действий в коде:
- Установка русской локали:
Функция
setlocale( LC_ALL,Russian)устанавливает русскую локаль, что позволяет работать с русскими символами в консоли. - Массив строк с названиями времен года:
Массив
times[]содержит строки, соответствующие названиям времен года. Здесь он содержит 13 элементов, но только 12 уникальных значений, так какЗимаповторяется три раза. - Ввод номера месяца:
Функция
cout <<Введите номер месяца:;выводит сообщение с просьбой ввести номер месяца. Функцияcin >> Month;считывает введенное значение и сохраняет его в переменнойMonth. - Проверка введенного значения: Если введенное значение находится в диапазоне от 1 до 12, то выводится соответствующее название времени года. Если введенное значение выходит за указанный диапазон, то выводится сообщение об ошибке.
- Вывод названия времени года:
Функция
cout << times[Month-1] << endl;выводит название времени года, соответствующее введенному номеру месяца. - Подтверждение ввода:
Функция
system(pause);приостанавливает выполнение программы до тех пор, пока пользователь не нажмет любую клавишу, подтверждая свой ввод.