先输入年在输入月然后在输入日~得出这是这一年的第几天!谁能帮我写个代码让我看看啊?谢谢了!!

解决方案 »

  1.   

    我才学了几天~最好用用if...else语句写出来!
      

  2.   


    public class DateTest { private int getDayOfYear(int year, int month, int day) {
    Calendar calendar = new GregorianCalendar(year, month-1, day);
    return calendar.get(Calendar.DAY_OF_YEAR);
    } public static void main(String[] args) {
    DateTest test = new DateTest();
    System.out.println(test.getDayOfYear(2008, 5, 2));
    }}
      

  3.   


    int year;
    int month = 1;
    int day = 1;private static bool leapYear()
    {
    // 省略闰年判断方法
    }
    private static int getLastDayOfMonth()
    {
    int days = {31,28,31,30,31,30,31,31,30,31,30,31};
    if (leapYear() && month == 2)
    {
    return 29;
    }
    return days[month - 1];
    }
    private statci void nextDay()
    {
    if (++day > getLastDayOfMonth())
    {
    day = 1;
    if (++month > 12)
    {
    month = 1;
    year++;
    }
    }
    }public static int getDaysOfYear(int year,int month,int day)
    {
    this.year = year;
    int count = 0;
    while (true)
    {
    nextDay();
    count++;
    if (month = this.month && day == this.day)
    {
    break;
    }
    }
    return count;
    }
      

  4.   

    import java.util.*;
    public class DJTian
    {
    public static void main(String args[]){
    Scanner cs=new Scanner(System.in);
    System.out.println("请输入年");
    int a=cs.nextInt();
    System.out.println("请输入月");
    int a1=cs.nextInt();
    System.out.println("请输入日");
    int a2=cs.nextInt();
    boolean b;
    if(a%4!=0){
    b=false;
    }else if (a%100!=0)
    {
    b=true;
    }else if (a%400!=0)
    {
    b=false;
    }else{
    b=true;
    }if (b=true)
    {
    a=365;
    }else{
    a=366;
    }
    if (a==365)
    { }

    }
    }
    我写到这就不会了~谁能帮我在谢谢!楼上的我看不懂啊!!在DOS下运行!
      

  5.   

    干吗不用个工具啊,比如JCreator,哪怕是仅仅用来编译运行也好,干吗跑到dos下面去,每次输长串命令!
      

  6.   

    package com.cslg.xuxing.cn;import java.util.Scanner;public class Demo01 {
        public static void main(String args[])
        {
         Scanner cs=new Scanner(System.in);
         int totalday=0;
         //下面是一个存放一年十二个月的天数的数组
         int []monthday={31,28,31,30,31,30,31,31,30,31,30,31};//这里默认2月份是28天当判断是润年后再在总天数上加上1
         System.out.println("请输入年(between 1900 and 5000):");
         int year=cs.nextInt();
         boolean isrun=false; //判断是否是润年
         System.out.println("请输入月(between 1 and 12):");
         int month=cs.nextInt();
         System.out.println("请输入日(between 1 and 31):");
         int day=cs.nextInt(); //上面我们获得了年月日的值
         if((year%4==0 && year%100!=0) || year %400==0 ){ //判断润年看是否能被400整除或者能被4整除但不能被100整除     isrun=true;                                      //此时就是润年,特别要注意二月份
         }
         int i=1;                         //局部变量
            while(i!=month){                    //使用while进行循环此时输入的month这个月不能加到总天数中所以循环到这个月
             totalday=monthday[i-1]+totalday;     //这里数组的第一个值对应的下标是0所以i需要减去1才能够得到第一个月份的天数
             i++;                                 //这个不能少是循环的关键
            }
            
            if(isrun && month>2){
             totalday=day+totalday+1;           //要在总的天数加上1必须是月份大于2并且要是润年,否则没有必要加
            }
            else
             totalday=day+totalday;
            System.out.println(year+"年"+month+"月" +day+"日"+"是一年中的第:"+totalday+"天!"); //打印出总的天数
            cs.close();
        }
        
    }上面只是一个简单的程序,当然功能还可以更加的完善。
    如果看不懂再上来,要告诉别人你已经学了哪些知识,别人才能够写你看的懂得代码。
      

  7.   

        public static void main(String[] args) {
            int y=1999,m=11,d=21;//自己改成从键盘输入
            Calendar cal=Calendar.getInstance();
            cal.set(y,m,d);
            System.out.println(cal.get(DAY_OF_YEAR));
        }
      

  8.   

    最简单的方法就是用switch 然后把每个月定义进去 
    不过感觉很麻烦 没有其他的什么好方法了
      

  9.   

    public int getDayofYear(int year, int month, int day)
    {
    Calendar c = Calendar.getInstance();
    c.set(year, month - 1, day);
    return c.get(Calendar.DAY_OF_YEAR);
    }注意在 Calendar 中月份是从 0 开始的,同时使用这段代码时应导入包:import java.util.Calendar;