package learn;
import java.util.*;//Java类库
public class DayOfBirth {
public static void main(String[] args) {
//Scanner键盘输入的用法
Scanner input = new Scanner(System.in);
System.out.print("请输入年份:");
int year = input.nextInt();
System.out.print("请输入月份:");
int month = input.nextInt();
System.out.print("请输入日期:");
int day = input.nextInt();//输入内容返回
/**
* 计算每月多少天
*/
/*boolean isLeapYear=(year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);//布尔类型判断闰年
int[] dayMonth={31, isLeapYear ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};//三目运算判断二月多少天
*/
int towMonth=28;//假设二月28天
if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
towMonth = 29;
}//判断年份是否为闰年,闰年时二月29天
int[] dayMonth={31, towMonth, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //创建数组,分配每月的天数
/**
* 计算占一年中多少天
*/
int dayYear = 0;
for (int i = 0; i < month - 1; i++)//根据输入的月份减去当前月份
{
dayYear += dayMonth[i];//减去当前月份后,将前面月份天数相加
}
dayYear += day;//前面月份天数相加后,加上当前月份的日期,得到占一年中多少天
System.out.println(year + "年" + month + "月" + day + "日是" + year + "年的第" + dayYear + "天");
//关闭IO流,System.in属于IO流
input.close();
}
}
运行结果