您的位置:首页 > 编程语言 > Java开发

java经典算法四十题

2013-04-12 13:01 375 查看
java经典算法四十题

【程序14】题目:输入某年某月某日,判断这一天是这一年的第几天?

1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一

天。

import java.util.*; public class test { public static void main (String[]args){ int day=0; int month=0; int year=0; int sum=0; int leap;

System.out.print("请输入年,月,日\n");

Scanner input = new Scanner(System.in);

year=input.nextInt();

month=input.nextInt();

day=input.nextInt();

switch(month) /*先计算某月以前月份的总天数*/

{case 1:

sum=0;break; case 2:

sum=31;break; case 3:

sum=59;break; case 4:

sum=90;break; case 5:

sum=120;break; case 6:

sum=151;break; case 7:

sum=181;break; case 8:

sum=212;break; case 9:

sum=243;break; case 10:

sum=273;break; case 11:

sum=304;break; case 12:

sum=334;break; default:

System.out.println("data error");break;

}

sum=sum+day; /*再加上某天的天数*/

if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/

elseleap=1;

leap=0;

if(leap==1 && month>2)/*如果是闰年且月份大于2,总天数应该加一天*/

sum++;

System.out.println("It is the the day:"+sum);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: