Java для начинающих работа - запись Java программы, введите дату в консоли, дата расчета первые несколько дней в году, соответствующий.

Спрос Описание:

Написание программ на Java, введите дату в консоли, вычислить дату, соответствующий день года.

Реализация идей:

(1) объявить переменный год, месяц и дату, для хранения дат в год, месяц, день.

(2) объявления переменных дней, для хранения накопленного количества дней.

(3) получение переменного года сканера на входе даты пользователя, и, месяц и назначение даты.

(4) Введите первые несколько дней с даты рассчитывается с использованием текущего входного года, в том числе вычисления количества дней в двух частях: накопленное количество дней до всего войти в месяц 1 месяц, 2 ввода месяца общее число дней прошло. Например, введите дату 2020, 7 мая. Во- первых рассчитать количество дней для всех 2020 с января по апрель, количество дней в январе 2020 года, что соответствует 31 дней, количество дней в феврале (2020 високосный год) , что соответствует 29 дням. Март соответствующих дней 31 дней 30 дней дней в апреле, в это время, не может содержать количество дней в мае января 2020 года по апрелю все накопленное количество дней до 121 дней. Продолжать накапливать через несколько дней после того, как семь дней мая прошло, и конечный результат 2020 7 мая до 128 дней текущего года.

(5) Число дней кумулятивные правила расчета цикла необходимо множество раз подряд, аккумулирующих количество дней в месяц до месяца с использованием для структуры петли для достижения.

① выражение. Месяц предыдущий месяц Накопление потребность, переменная я объявлена ​​в качестве управляющей переменной цикла, в соответствии с результатами работы, рекомендуется, чтобы установить начальное значение я равен 1, это возможно для цикла 3 по выражению:

表达式1:int i = 1
表达式2:i < month
表达式3:i++

② цикла. Используя структуру переключателя, я рассчитывается соответствующий месяц и число дней аккумулировать, когда я 2, требуется определяется високосный год.

(6) использование результатов шага расчета, продолжает накапливать количество дней прошли месяц.

(7) System.out.printlf (); для форматирования результата операции выводится.

 

Код реализации:

import java.util.Scanner;

public class kkk {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//年月日
		int year,month,date;
		int days = 0;		//天数
		//接收用户输入的年月日
		System.out.println("请输入日期:");
		year = sc.nextInt();
		month = sc.nextInt();
		date = sc.nextInt();
		//使用循环结构,依次累加每月的天数(不包括输入月份当中的月份)
		for(int i = 1; i < month; i++) {
			//使用switch结构,实现每月天数计算
			switch(i) {
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10:
			case 12:
				days +=31;
				break;
			case 4:
			case 6:
			case 9:
			case 11:
				days +=30;
				break;
			case 2:
				//闰年判断
				if((year % 4 == 0 && year % 100!=0)||(year % 400 == 0)){
					days += 29;
					break;
				}else {
					days += 28;
					break;
				}
			}
		}
		//累加输入日期中当前月份已过的天数
		days += date;
		System.out.printf("%d年%d月%d日是当前年的第%d天",year,month,date,days);
    }
}

 

Опубликовано 34 оригинальные статьи · вона похвала 6 · просмотров 1757

рекомендация

отblog.csdn.net/weixin_44893902/article/details/104416402