日历查找

代码功能:输入年份和月份,可得到对应日历表,如上图。

代码如下:

import java.util.*;
public class date {
	public static void main(String[] args){
		Scanner in=new Scanner(System.in);
		//System.out.println("")
		System.out.println("请输入年份:");
		int year=in.nextInt();
		System.out.println("请输入月份:");
		int month=in.nextInt();
		int flag=0,sum=1;
		for(int i=1900;i<year;i++){
			flag=0;
			if((i%4==0&&i%100!=0)||(i%400==0))
				flag=1;
			sum+=flag+365;
		}
		for(int i=1;i<month;i++){
			if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
				sum+=31;
			else if(i==2)
				sum+=28;
			else 
				sum+=30;
		}
		if((year%4==0&&year%100!=0)||(year%400==0)){
			sum+=1;
		}
		
		System.out.println("您查找的日历表如下:");
	    System.out.println("日	一	二	三	四	五	六");
	    int wekday=sum%7;
	    for(int i=1;i<=wekday;i++){
	    	System.out.print("	");
	    }
	   int number;
	   if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
			number=31;
		else if(month==2)
			number=28;
		else 
			number=30;
	   if(((year%4==0&&year%100!=0)||(year%400==0))&&(month==2))
		   number+=1;
	   int date=1;
	   for(int i=wekday+1;i<=7;i++){
		   System.out.print(date+"	");
		   date++;
	   }
	   System.out.println();
	   int ans=0;
	   for(;date<=number;date++){
			   System.out.print(date+"	");
			   ans++;
			   if(ans%7==0)
				   System.out.println();
		   }
		   System.out.println();
	   }
	}

  

原文地址:https://www.cnblogs.com/YQH760/p/3253172.html