public static void main(String[] args) {
Scanner input=new Scanner (System.in);
System.out.println("输入一个年份");
int year=input.nextInt();
System.out.println("输入一个月份");
int yue=input.nextInt();
int day=0;//保存的总和
for(int i=1900;i<year;i++){
if(i%4==0&&i%100!=0||i%400==0){//判断是否是闰年
day+=366;//闰年
}else{
day+=365;//平年
}
}
boolean isBig=false;
if(year%4==0&&year%100!=0||year%400==0){
isBig=true;
System.out.println("闰年");
}else{
isBig=false;
System.out.println("平年");
}
int yueday=0;//每月的天数总和
for(int i=1;i<=yue;i++){
switch (i) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
yueday=31;
System.out.println("31天");
break;
case 2:
if(isBig=true){
yueday=29;
System.out.println("29天");
break;
}else{
yueday=28;
System.out.println("28天");
break;
}
case 4:
case 6:
case 9:
case 11:
yueday=30;
System.out.println("30天");
break;
}
if(i<yue){
day+=yueday;//小于输入的月份 所有天数之和
}
}
int xingqi=day%7+1;//求星期几的公式
System.out.println("日\t一\t二\t三\t四\t五\t六");
int week=0;
if(xingqi==0){
week=7;
}else{
week=xingqi;
}
if(week<7){
for(int i=1;i<=week;i++){
System.out.print("\t");
}
}
for(int i=1;i<=yueday;i++){
System.out.print(i+"\t");
if((day+i-1)%7==5){//总数加上当月的天数减去起始值 除以一周的天数 余5的情况下换行
System.out.println();
}
}
}
相关文章
- 04-08main方法快速编辑日历
- 04-08如何在Eclipse中快速添加main方法
- 04-08C# 动态创建SQL数据库(二) 在.net core web项目中生成二维码 后台Post/Get 请求接口 方式 WebForm 页面ajax 请求后台页面 方法 实现输入框小数多 自动进位展示,编辑时实际值不变 快速掌握Gif动态图实现代码 C#处理和对接HTTP接口请求
- 04-08JAVAEE——BOS物流项目09:业务受理需求分析、创建表、实现自动分单、数据表格编辑功能使用方法和工作单快速录入
- 04-08VSCode 配置快速输入Python的Main函数方法
- 04-08用MVC的辅助方法自定义了两个控件:“可编辑的下拉框控件”和“文本框日历控件”