文章标题

来源:互联网 发布:js怎么给数组赋值 编辑:程序博客网 时间:2024/06/14 20:36

package pack;
import java.util.Scanner;
public class NextDate {

static boolean leap(int yy){    return(yy%400==0||(yy%4==0&&yy%400!=0));}static void nextdate(int year,int month,int day){    switch(month)    {    case 1:    case 3:    case 5:    case 7:    case 8:    case 10:        if(day>=1&&day<31)        {            day=day+1;        }        else if(day==31)        {            day=1;            month=month+1;        }        break;    case 4:    case 6:    case 9:    case 11:        if(day>=1&&day<30)        {            day=day+1;        }        else if(day==30)        {            day=1;            month=month+1;        }        break;    case 12:        if(day>=1&&day<31)        {            day=day+1;        }        else if(day==31)        {            day=1;            month=month+1;            year=year+1;        }        break;    case 2:        if(day>=1&&day<28)        {            day=day+1;        }        else if(!leap(year)&&(day==28))        {            day=1;            month=month+1;        }        else if(leap(year)&&day==28)        {            day=day+1;        }        else if(leap(year)&&(day==29))        {            day=1;            month=month+1;        }    }    System.out.println(year+"年"+month+"月"+day+"日 ");}public static void main(String args[]){    int year,month,day;    Scanner in=new Scanner(System.in);    System.out.println(2012%400==0||(2012%4==0&&2012%400!=0));    System.out.println("请输入年份(范围在1800-2050):");    year=in.nextInt();    while(year<1800||year>2050)    {        System.out.println("输入错误,请重新输入");        System.out.println("请输入年份(范围在1800-2050):");        year=in.nextInt();    }    System.out.println("请输入月份:");    month=in.nextInt();    while(month<1||month>12)    {        System.out.println("输入错误,请重新输入");        System.out.println("请输入年份(范围在1-12):");        month=in.nextInt();    }    System.out.println("请输入日期:");    day=in.nextInt();    switch(month)    {    case 1:    case 3:    case 5:    case 7:    case 8:    case 10:    case 12:        while(day<1||day>31)        {            System.out.println("输入错误,请重新输入");            System.out.println("请输入日期(范围在1-31):");            day=in.nextInt();        }        break;    case 4:    case 6:    case 9:    case 11:        while(day<1||day>30)        {            System.out.println("输入错误,请重新输入");            System.out.println("请输入日期(范围在1-30):");            day=in.nextInt();        }        break;    case 2:        while(!leap(year)&&(day<1||day>28))        {            System.out.println("输入错误,请重新输入");            System.out.println("请输入日期(范围在1-28):");            day=in.nextInt();        }        while(leap(year)&&(day<1||day>29))        {            System.out.println("输入错误,请重新输入");            System.out.println("请输入日期(范围在1-29):");            day=in.nextInt();        }    }    System.out.print(year+"年"+month+"月"+day+"日的下一天是 ");    nextdate(year,month,day);}

}

原创粉丝点击