0 / 0 / 1
Регистрация: 05.11.2015
Сообщений: 21
|
||||||
1 | ||||||
Подсчет дней в году(структура) - выход из цикла while27.08.2017, 10:32. Показов 726. Ответов 5
Метки нет (Все метки)
Добрый день!Спустя небольшое время решил возобновить изучение СИ,остановился на структурах.
Задание такое:задать дату,и программа должна подсчитать количество дней(учитывая високосность).все работает,программа считает,но для задание даты я воспользовался таким форматом для scanf,но не получается грамотно выйти из цикла while при неверном наборе(если введу букву по ошибке или намеренно).Подскажите,как можно это исправить?заодно,посоветуйте,что можно изменить.Спасибо
0
|
27.08.2017, 10:32 | |
Ответы с готовыми решениями:
5
Подсчет дней между датами, преждевременный выход из цикла Вывести число дней в заданном году, учитывая, что обычный год насчитывает 365 дней, а високосный — 366 дней Вывести число дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный — 366 дней Определить сколько дней в году (всего 12 месяцев, в каждом есть определенное количество дней) |
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
||||||
27.08.2017, 13:28 | 3 | |||||
Добавлено через 8 минут вообще задание странное. Количество дней, прошедших с начала года / от Рождества Христова, или просто количество дней в заданном году? В "решении" странностей ещё больше. К примеру, структуру по идеологическим соображениям нужно использовать? Там в принципе двух массивов за глаза хватило бы - первый с названиями месяцев, второй с количеством дней в каждом месяце...
0
|
0 / 0 / 1
Регистрация: 05.11.2015
Сообщений: 21
|
|
27.08.2017, 14:05 [ТС] | 4 |
насчет високосности тут понятно,что есть исключения.нужно просто чтобы при вводе года,если он високосный то дней становится больше и все.
а само задание оно на отработку знаний по структурам.т.е предыдущее задание было чтобы создать шаблон структуры,потом заполнить его массивом структур,потом поиск месяца по аббривиатуре и т.д. Спасибо за помощь,только вот момент,объясните,почему использовалась тройка в условии while чем подразумевается такое использование? я уже пытался через ctype условия на наличие букв сделать,но так лаконичней намного.
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
27.08.2017, 14:35 | 5 |
Функция scanf возвращает количество удачно прочитанных и присвоенных значений. То есть, цикл будет работать до тех пор, пока удалось с консоли три числа прочитать. Другой вопрос - ещё бы убедиться, что числа правильные...
0
|
0 / 0 / 1
Регистрация: 05.11.2015
Сообщений: 21
|
|
27.08.2017, 14:49 [ТС] | 6 |
я думаю что тут достаточно условий на месяц и день,кроме февраля.
0
|
27.08.2017, 14:49 | |
27.08.2017, 14:49 | |
Помогаю со студенческими работами здесь
6
Дан номер года (положительное целое число). Определить количество дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный Подсчет количества дней без учета нерабочих праздничных дней в периоде Число дней в году Определить количество дней в году. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |