Java经典算法40例(十四)

来源:互联网 发布:农村创业软件 编辑:程序博客网 时间:2024/06/01 19:18

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

代码:

import java.util.Scanner;/** * 日历 * @author cheng * */public class Fourteen {    public static void main(String[] args) {        int year=0;        int month=0;        int day=0;        int sum=0;        System.out.println("请输入年 月 日");        Scanner in=new Scanner(System.in);        year=in.nextInt();        month=in.nextInt();        day=in.nextInt();        //System.out.println(year+month+day);        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;        }        sum=sum+day;        int flag;        if(year%400==0||(year%4==0&&year%100!=0)){  //判断闰年            flag=1;        }else{            flag=0;        }        if(flag==1&&month>2){            sum=sum+1;        }        System.out.println("这是今年第"+sum+"天");    }}

输出结果:

请输入年 月 日2017 3 1这是今年第60天