java 打印当月日历,菜鸟求帮助!输入年份月份打印当年当月的日历!帮帮我!!用JAVA2写...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

前几版的纠错版

public class rili

{

private int[] datakeeper=new int[12];

private int yearholder;

private int dealday=0;

private int limter=1;

private String readline;

private int distence=0;

private int yearholderT;

public void input()

{

System.out.println("please enter the year you want");

System.out.println("and I will draw a datetable for you");

yearholder=SavitchIn.readLineInt();

for(int n=0;n<12;n++)

{

if(n==0||n==2||n==4||n==6||n==8||n==9||n==11)

{

datakeeper[n]=31;

}

else

{

datakeeper[n]=30;

}

if((n==1)&&((yearholder%4==0)&&(yearholder%100!=0))||(yearholder%400==0))

{

datakeeper[1]=29;

}

else

{

datakeeper[1]=28;

}

}

readline="星期一 星期二 星期三 星期四 星期五 星期六 星期日";

}

public void computedate()

{

if(yearholder>2007)

{

distence=yearholder-2007;

yearholderT=2007;

for(int n=0;n

{

yearholderT=2007+n;

if(((yearholderT%4==0)&&(yearholderT%100!=0))||(yearholderT%400==0))

{

dealday+=2;

}

else

{

dealday++;

}

}

dealday=dealday%7;

limter=dealday;

}

if(yearholder<2007)

{

distence=2007-yearholder;

yearholderT=yearholder;

for(int n=0;n

{

yearholderT=yearholder+n;

if(((yearholderT%4==0)&&(yearholderT%100!=0))||(yearholderT%400==0))

{

dealday+=2;

}

else

{

dealday++;

}

}

dealday=7-dealday%7;

limter=dealday;

}

if(yearholder==2007)

{

dealday=0;

limter=0;

}

}

public void drawmap()

{

for(int n=1;n<=12;n++)

{

System.out.print(" ");

System.out.print(n);

System.out.println("月");

System.out.println(readline);

int h=n-1;

for(int l=0;l

{

System.out.print(" ");

}

for(int m=1;m<=datakeeper[h];m++)

{

limter++;

if(m<=9)

{

System.out.print(" "+m+" ");

}

else

{

System.out.print(" "+m+" ");

}

if(limter==7)

{

System.out.println();

limter=0;

}

}

dealday=limter;

System.out.println();

}

}

public static void main(String[] args)

{

rili a=new rili();

a.input();

a.computedate();

a.drawmap();

}

}

我没有完全测试,不过算法上应该不会有错的,同学

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值