import java.util.scanner;
class calendarmain
{
//主函数入口
public static void main(string[] args)
{
system.out.println("*****请输入日期(格式如: 2011-01)*****");
scanner sc = new scanner(system.in);
string ym = sc.next();
//截取字符串
string[] yearmonth = ym.split("-");
//将字符串转化成整型
int year = integer.parseint(yearmonth [0]);
int month = integer.parseint(yearmonth [1]);
year.fun(year);
month.fun(month,year);
}
}
//获取闰年个数
class year
{
//多少个闰年
static int leapyear = 0;
public static void fun(int year){
if(year > 1990 && year <10000){
while(year >= 1990){
if(year % 4 == 0 && year % 100 != 0 || (year % 400 ==0 )){
leapyear ++;
}
year --;
}
}else{
system.out.println("请输入查询的年份大于或等于1990年!");
}
}
}
//获取一个月多少天和总天数
class month
{
public static void fun(int month,int year){
int monthday = 0;
year y = new year();
int days = y.leapyear + (year - 1990)*365;
if(month > 0 && month <=12){
for(int i = 1;i <= month;i++){
if(i < 8 && i != 2){
days += i % 2 == 1 ? 31 :30;
monthday = i % 2 == 1 ? 31 :30;
}
if(i > 7){
days += i % 2 == 1 ? 30 :31;
monthday = i % 2 == 1 ? 30 :31;
}
if(i == 2){
if(year % 4 == 0 && year % 100 != 0 || (year % 400 ==0 )){
days += 28;
monthday = 29;
}else{
days += 28;
monthday = 28;
}
}
}
show.mothed(days,monthday);
}else{
system.out.println("请输入正确的月份!");
}
}
}
//显示日历
class show
{
public static void mothed(int days, int monthday){
//加一表示从星期一开始
int week = (days - monthday) % 7 + 1;
system.out.println("\n周日"+"\t周一"+"\t周二"+"\t周三"+"\t周四"+"\t周五"+"\t周六");
for (int i = 1;i <= monthday + week ;i++ )
{
if(i <= week){
system.out.print(" "+"*"+"\t");
}else{
if((i-week) < 10){
system.out.print(" "+(i-week)+"\t");
}else{
system.out.print((i-week)+"\t");
}
}
if(i%7 == 0){
system.out.print("\n");
}
}
}
}
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号