import java.util.Scanner;
public class Test {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("这个程序将输出1900年以后的指定年月的月历\n请输入年份:");
int year=in.nextInt();
System.out.println("请输入月份:");
int mouth=in.nextInt();
int sum=0,wekday;//将用到的距1900.1.1的总天数和星期数,现有总天数才能求当月1号星期几
for(int y=1900;y<year;y++){
if(y%4==0&&y%100!=0||y%400==0){
sum+=366;
}else{
sum+=365;
}
}//先计算年份总天数
for(int m=1;m<mouth;m++){
if(m==2){
if(year%4==0&&year%100!=0||year%400==0){
sum+=29;
}else{
sum+=28;
}
}else{
if(m==4||m==6||m==9||m==11){
sum+=30;
}else{
sum+=31;
}
}
}//在精确到月的天数
sum++;//最后精确到具体天数
wekday=sum%7;
System.out.println("日\t一\t二\t三\t四\t五\t六");
for(int w=1;w<=wekday;w++){
System.out.print("\t");
}//循环用不到的先输出
int day;
if(mouth==2){
if(year%4==0&&year%100!=0||year%400==0){
day=29;
}else{
day=28;
}
}else{
if(mouth==4||mouth==6||mouth==9||mouth==11){
day=30;
}else{
day=31;
}
}//当月有多少天
for(int d=1;d<=day;d++){
if(wekday%7==6){
System.out.print(d+"\n");
}else{
System.out.print(d+"\t");
}
wekday++;
}//这个循环输出内部
}
}
本文来源:https://www.wddqw.com/doc/2807ead64793daef5ef7ba0d4a7302768e996f83.html
正在阅读:
java输入年月输出日历01-01
红色电影观后感范文01-01
我是一株草01-01
中学生演讲稿:天行健,君子以自强不息01-01
短的好句摘抄大全01-01
跟着唐诗去旅行第一集观后感200字01-01
《平凡的世界》心得札记_101-01
社会保险基金财务制度练习题01-01