一道JAVA题

[复制链接]
查看11 | 回复1 | 2008-5-31 17:12:36 | 显示全部楼层 |阅读模式
让做一个万年历 帮我看看哪错了
输出日期表的时候总是不正确
改完帮我发上来谢谢
import java.util.*;
public class _万年历 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

System.out.println("请输入年份:");

Scanner input=new Scanner(System.in);

int year=input.nextInt();

System.out.println("请输入月份");

int mouth=input.nextInt();

boolean bool;

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

System.out.println(year+"是闰年");

bool=true;

}else{

System.out.println(year+"是平年");

bool=false;

}

switch(mouth){

case 4:

case 6:

case 9:

case 11:

System.out.println(mouth+"有30天");

break;

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

System.out.println(mouth+"有31天");

break;

case 2:

if(bool=true){

System.out.println(mouth+"有29天");

}else{

System.out.println(mouth+"有28天");

}

default:

System.out.println("输入有误,该数字无效。");

break;

}

int sum=0;

for(int i=1900;i<=year;i++){

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

sum+=366;

}else{

sum+=365;

}

System.out.println("天数为"+sum);

}
int mouthsum=0;
int day=0;
for(int i=1;i<=mouth;i++){
switch(i){
case 4:
case 6:
case 9:
case 11:

day=30;

break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:

day=31;

break;
case 2:if(bool=true){

day=29;
}else{

day=28;
}
break;
default:

System.out.println("请从新输入,该数字无效");
break;
}
mouthsum+=day;
}
int total=sum+mouthsum;
System.out.println("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六\t");

int week;
int temp=1+total%7;
if(temp==7){
week=0;
}else{

week=temp;
}
//System.out.println(week);
for(int i=0;i<week;i++){

System.out.print("\t");
}
for(int i=1;i<=day;i++){

System.out.print(i+"\t");

if((total+i-1)%7==5){

System.out.println();

}
}
}
}

回复

使用道具 举报

千问 | 2008-5-31 17:12:36 | 显示全部楼层
下面是以前写的一个万年历程序,lz可以参考。以下是两个类,请楼主分别存成两个java文件:其中MainFrame.java是显示日历程序,Clock.java是日历计算程序。编译后运行MainFrame这个类即可。1.MainFrame.java---import java.awt.BorderLayout;import java.awt.Color;import java.awt.GridLayout;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;impor
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行