import java.util.Scanner; /** * 根据传入的年、月、日计算这一天是星期几 * @param y 年 * @param m 月 * @param d 日 * @return 星期几 */ public class DaTe{ static String week(int y,int m,int d){ int days=(y-1900)*365;//从1900到y-1年的总天数,润年会少一天 //加上闰年的天数 for(int i=1900;i<y;i++){ if(i%4==0&&i%100!=0||i%400==0) days++; } //加上1到m-1月天数 for(int i=1;i<m;i++){ switch(i){ case 2:days+=28; if(y%4==0&&y%100!=0||y%400==0) days++;break; case 4:case 6:case 9:case 11:days+=30;break; default:days+=31; } } days+=d; String[] s={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"}; return s[days%7]; } public static void main(String[] args){ Scanner in=new Scanner(System.in); System.out.println("请输入年月日:"); int y,m,d; y=in.nextInt(); m=in.nextInt(); d=in.nextInt(); String w=week(y,m,d); System.out.println(y+"年"+m+"月"+d+"日为:"+w); } }