/*
*输入某年某月某日,判断这一天是这一年的第几天(加月份与天数判断),
*看了网上很多都不带2月28天和29天判断 , 加入判断如下.
*/
import java.util.Scanner;
public class JiSuanDay {
public static void main(String[] args) {
int year;
int month;
int day;
int sum=0;
int flag=0;//flag用来标识是闰年还是平年
Scanner reader =new Scanner(System.in);
int months[]={31,28,31,30,31,30,31,31,30,31,30,31};
System.out.println("请输入年份:");
year=reader.nextInt();
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
/*System.out.println(year+"年是闰年");
System.out.println();*/
months[1]=29;
System.out.println("请输入月份:");
month=reader.nextInt();
while (month<1 || month>12 ){
System.out.println("输入错误,重新输入");
month=reader.nextInt();
}
System.out.println("请输入几号:");
day=reader.nextInt();
while (day < 1 || day > 31 ){
System.out.println("输入错误,请重新输入");
day=reader.nextInt();
}
if(month==1) {
System.out.println(year+" 年的第 "+day+"天");
}
if (month==2){
while (day<1 || day >29){
System.out.println("输入错误,请重新输入,润年2月最多29天");
day=reader.nextInt();
}
}
for (int i=0;i<month-1;i++) {
sum=sum+months[i];
}
System.out.println(year+"年是闰年"+",这是"+year+"年的第"+(sum+day)+"天");
}
else {
/*System.out.println(year+"年是平年");
System.out.println();*/
months[1]=29;
System.out.println("请输入月份:");
month=reader.nextInt();
while (month<1 || month>12 ){
System.out.println("输入错误,重新输入");
month=reader.nextInt();
}
System.out.println("请输入几号:");
day=reader.nextInt();
while (day < 1 || day > 31 ){
System.out.println("输入错误,请重新输入");
day=reader.nextInt();
}
if(month==1) {
System.out.println(year+" 年的第 "+day+"天");
}
if (month==2){
while (day<1 || day >28){
System.out.println("输入错误,请重新输入,平年2月最多28天");
day=reader.nextInt();
}
}
for (int i=0;i<month-1;i++) {
sum=sum+months[i];
}
System.out.println(year+"年是平年"+",这是"+year+"年的第"+(sum+day)+"天");
}
}
}
请输入年份:
2019
请输入月份:
2
请输入几号:
29
输入错误,请重新输入,平年2月最多28天
28
2019年是平年,这是2019年的第59天
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/192972.html