用java编写一个程序,用户输入日期,计算该日期是这一年的第几天。
时间: 2023-04-07 15:05:03 浏览: 151
好的,这个问题可以回答。以下是Java代码示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入日期(格式为yyyy-mm-dd):");
String dateStr = scanner.nextLine();
String[] dateArr = dateStr.split("-");
int year = Integer.parseInt(dateArr[0]);
int month = Integer.parseInt(dateArr[1]);
int day = Integer.parseInt(dateArr[2]);
int[] daysOfMonth = {31,28,31,30,31,30,31,31,30,31,30,31};
int days = 0;
for (int i = 0; i < month - 1; i++) {
days += daysOfMonth[i];
}
days += day;
if (month > 2 && isLeapYear(year)) {
days++;
}
System.out.println("该日期是这一年的第" + days + "天。");
}
public static boolean isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}
}
```
这个程序可以计算用户输入的日期是这一年的第几天。用户需要按照格式输入日期,程序会自动解析年、月、日,并根据每个月的天数计算出该日期是这一年的第几天。如果该年是闰年,还需要额外加上2月29日这一天。
阅读全文