java接收用户输入的年份year和月份month,计算该年该月的天数并输出
时间: 2024-09-23 20:03:41 浏览: 43
08输入年份和月份,输出天数.docx
在Java中,你可以创建一个简单的程序来接收用户的年份(year)和月份(month),然后根据格里高利历(公历)规则计算该月的天数。这里是一个简单的示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scanner.nextInt();
System.out.println("请输入月份(1-12):");
int month;
// 检查输入的月份是否有效
while (month < 1 || month > 12) {
month = scanner.nextInt();
System.out.println("月份必须在1到12之间,请重新输入:");
}
// 使用switch语句根据不同月份计算天数
int daysInMonth;
switch (month) {
case 2:
if (isLeapYear(year)) {
daysInMonth = 29; // 跳过闰年的特殊处理
} else {
daysInMonth = 28;
}
break;
case 4:
case 6:
case 9:
case 11:
daysInMonth = 30;
break;
default:
daysInMonth = 31;
break;
}
System.out.printf("在%d年%d月有%d天。\n", year, month, daysInMonth);
// 关闭扫描器
scanner.close();
}
// 判断是否为闰年
private static boolean isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
}
```
当你运行这个程序,它会提示用户输入年份和月份,然后根据输入的数值计算出对应月份的天数。注意,对于二月,我们额外检查了是否是闰年,如果是,则2月有29天。
阅读全文