2017-02-14 24 views
0

Ад всем! Я программист. Я попытался найти что-то похожее на то, что я ищу, но я не могу полностью понять похожие примеры.Как увеличить цикл месяцев. Затем отобразите с этого времени

Что я пытаюсь сделать, это ввести пользователя несколько лет, преобразовать годы в месяцы. Затем отобразите с месяца 1 до полного количества месяцев в списке, используя переменную месяцев. Мне нужен цикл, чтобы продолжить, пока он не достигнет полного количества месяцев, а затем остановитесь там. Ниже я догадываюсь, что я узнал. Я подозреваю, что мне может понадобиться использовать некоторую переменную счетчика, но не совсем точно, как это сделать.

int main(){ 
int years, months; 
printf("Enter years "); 
scanf_s("%d", &years); 

months = years * 12; 
printf("Months is %d ", months); 

do { 
    printf("Month",); //Month 1,2,3,4........24 up to full amount that was converted from years// 
} while(); 
return 0; 
+0

Используйте вспомогательную переменную, чтобы указать количество месяцев, которые вы уже указали. В цикле повторяется до тех пор, пока месяцы не достигнут 0, уменьшив его значение. – caiomcg

+0

do { printf ("% d,", счетчик); месяцев--; while (months! = 0); – caiomcg

+0

Спасибо! Раньше я пытался декрементировать, но не знал, как повернуть его по порядку. –

ответ

0
int count = 1; 
while (month != 0) { 
    printf("%d, ", count); 
    month = month - 1; 
    count = count + 1; 
} 
+0

Пожалуйста, отформатируйте (отступ) свой код. –

+0

Спасибо! Я, наконец, получил правильный результат! Я подробно рассмотрю это, чтобы использовать этот опыт в будущем. –

+0

принимайте ответ, если он работает. Спасибо –

0

Посмотрите на петлях, в то время как, для них и делать-то время. Вот ссылка на простой и прямой учебник: https://www.tutorialspoint.com/cprogramming/c_loops.htm

Для вашей проблемы просто создайте дополнительную переменную, инициализированную 1, и цикл, пока она не пройдет значение месяцев.

int years = 0; 
int months = 0; 
int counter = 1; 

printf("Enter years "); 
scanf("%d", &years); 

months = years * 12; 
printf("Months is %d ", months); 

printf("Months: "); 

do { 
    printf("%d ", counter); //Month 1,2,3,4........24 up to full amount that was converted from years// 
    counter++; 
} while (counter <= months); 

return 0; 
+0

Большое вам спасибо! Я не знал, что могу инициализировать годы, месяцы и т. Д. Это основная причина, по которой у меня были проблемы. Я скопировал ваш код и настроил его, чтобы реализовать его с другими переменными. –

+0

Всегда инициализируйте переменные! Даже указатели - с NULL. Надеюсь, вы много узнаете вместе с сообществом. Хорошего дня. – caiomcg

+0

Да, я не мог редактировать, но имел смысл сказать initialize with = 0. Конечно, с нетерпением ждем возможности узнать и внести свой вклад. –

 Смежные вопросы

  • Нет связанных вопросов^_^