我觉得最重要的是判断闰年的二月份是多少天!星期几就不会算,只算了天数!
小小程序,望大神指正!
/*
求一个输入一个日期对应的天数:
思路:1.用switch语句的特点来实现!
switch的特点是先找case,找不到case,再找deflaut,如果找到了
就按执行执行,遇到break,或者到末尾是才结束!
2.先加月份数,在加对应的天数
2.如果是11月份,就要先找到case 11,没遇到break在按顺序加上其他月份的天数!
*/
import java.util.Scanner;
class Qiu
{
public static void main(String[] args)
{
int a=0;
Scanner sc=new Scanner(System.in);
System.out.println("输入年");
int year=sc.nextInt();
System.out.println("输入月");
int month=sc.nextInt();
System.out.println("输入日");
int day=sc.nextInt();
if(month>1) //判断月份是整数的
{
switch(month) //判断是那一月份
{
case 12:
a=a+30;
case 11:
a=a+31;
case 10:
a=a+30;
case 9:
a=a+31;
case 8:
a=a+31;
case 7:
a=a+30;
case 6:
a=a+31;
case 5:
a=a+30;
case 4:
a=a+31;
case 3:
a=a+28;
case 2:
{
a=a+31;
if(year%400==0||(year%4==0&&year%100==0))//判断是否是闰年!是就加一天
{
a=a+1;
}
}
}
}
else
{
a=0;
}
day=a+day;
System.out.println("有"+day+"天");
}
} |