精华内容
下载资源
问答
  • 题目:输入某年某月某日,判断这一是这一年的第几天 首先我们需要知道闰年和平年如何区分,公历闰年的计算方法 1.普通年能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1900年不是闰年) 2.世纪年能被400...

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

    首先我们需要知道闰年和平年如何区分,公历闰年的计算方法
    1.普通年能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1900年不是闰年)
    2.世纪年能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)
    3.对于数值很大的年份,这年如果能整除3200,并且能整除172800则是闰年
    闰年的二月为29天,平年的为28天.而在以上区间之外的就是我们所说的平年。
    思路:考虑到年月日格式的转换所以分着输入比较方便先分别输入年份、月份和天数,这里我们建立了两个数组分别存储平年和闰年的天数,输入对应的内容之后还需要判断所输入的年月日是否正确,然后就可以简单表示了,例如2019年6月6号,先判断是平年还是闰年,然后按照平年所对应的数组进行简单计算commonYear[month-1]+day 也就是commonYear[6-1]+6 结果为157 这里采用了最基础的嵌套if语句来进行判断,最后输出结果
    代码如下:

    //题目:输入某年某月某日,判断这一天是这一年的第几天
    	@Test
    	public void demo01() {
    		int[] leapYear= {0,31,60,91,121,152,182,213,244,274,305,335,366};//闰年
    		int[] commonYear= {0,31,59,90,120,151,181,212,243,273,304,334,365};//平年
    		Scanner input=new Scanner(System.in);
    		System.out.print("请输入您要查询的年份:");
    		int year=input.nextInt();
    		System.out.print("请输入您要查询的月份:");
    		int month=input.nextInt();
    		System.out.print("请输入您要查询的天数:");
    		int day=input.nextInt();
    		int sumDays=0;
    		if(month>12||month<1) {
    			System.out.println("请输入正确的月份!");
    		}else{
    			//判断是否为闰年
    			if((year%4==0&&year%100!=0)||year%400==0) {
    				//天数为31天的月份
    				if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) {
    					//判断天数是否在31天之内
    					if(day<1||day>31) {
    						System.out.println("请输入正确的天数!");
    					}else {
    						sumDays=leapYear[month-1]+day;
    					}
    				}else if(month==2) {
    					//判断天数是否在29天之内
    					if(day<1||day>29) {
    						System.out.println("请输入正确的天数!");
    					}else {
    						sumDays=leapYear[month-1]+day;
    					}
    				}else {//为4、6、9、11月中的一月
    					//判断天数是否在30天之内
    					if(day<1||day>30) {
    						System.out.println("请输入正确的天数!");
    					}else {
    						sumDays=leapYear[month-1]+day;
    					}
    				}
    			}else {
    				//为平年
    				//天数为31天的月份
    				if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) {
    					//判断天数是否在31天之内
    					if(day<1||day>31) {
    						System.out.println("请输入正确的天数!");
    					}else {
    						sumDays=commonYear[month-1]+day;
    					}
    				}else if(month==2) {
    					//判断天数是否在28天之内
    					if(day<1||day>28) {
    						System.out.println("请输入正确的天数!");
    					}else {
    						sumDays=commonYear[month-1]+day;
    					}
    				}else {//为4、6、9、11月中的一月
    					//判断天数是否在30天之内
    					if(day<1||day>30) {
    						System.out.println("请输入正确的天数!");
    					}else {
    						sumDays=commonYear[month-1]+day;
    					}
    				}
    			}
    		}
    		System.out.println("这一天为一年中的第"+sumDays+"天");
    	}
    

    运行结果:

    在这里插入图片描述

    展开全文
  • 计算每个月多少,然后加上前几个月的所有天数和这个月的天数 import sys #输入某年某月某日,计算这一是这一年的第几 while True: year=int(input('Year:')) mon=int(input('Month:')) day=int(input('...

    思路

    • 先判断是闰年还是平年,再调用相应函数
    • 计算每个月多少天,然后加上前几个月的所有天数和这个月的天数
    import sys
    #输入某年某月某日,计算这一天是这一年的第几天
    while True:
        
        year=int(input('Year:'))
        mon=int(input('Month:'))
        day=int(input('Day:'))
        if year<0 or mon>12 or mon<0 or day>31 or day<0:
            #判断输入数值是否超过正常范围你,若是,报错退出程序
            print("Day Error!")
            sys.exit(0)
        if year%4==0 and year%400!=0:
            #判断是平年还是闰年
            run_year=True
        else:
            run_year=False
    
        def day_run_year(year,mon,day):
            """定义闰年的月份,并返回总天数"""
            sum_day=day
            day_month=[0,31,29,31,30,31,30,31,31,30,31,30,31]
            for i in day_month[0:mon]:
                sum_day=sum_day+i
            return sum_day
        def day_ping_year(year,mon,day):
            """定义平年每月是多少天,并返回总天数"""
            sum_day=day
            day_month=[0,31,28,31,30,31,30,31,31,30,31,30,31]
            for i in day_month[0:mon]:
                sum_day=sum_day+i
            return sum_day
        #调用函数,输出总天数
        if run_year:
            print(day_run_year(year,mon,day))
        else:
            print(day_ping_year(year,mon,day))
    
    展开全文
  • 计算一年的第几天

    千次阅读 2019-05-25 19:44:17
    计算一年的第几天 题目描述 今年的第几天? 输入年、月、日,计算该是本年的第几天。 输入描述: 包括三整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。 输出描述: 输入可能多组测试数据...

    计算一年的第几天

    题目描述
    今年的第几天?

    输入年、月、日,计算该天是本年的第几天。

    输入描述:
    包括三个整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。
    输出描述:
    输入可能有多组测试数据,对于每一组测试数据,
    输出一个整数,代表Input中的年、月、日对应本年的第几天。
    示例1
    输入
    1990 9 20
    2000 5 1
    输出
    263
    122
    代码:

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[]args)
        {
            Scanner sc=new Scanner(System.in);
            Main main=new Main();
            while(sc.hasNext()){
                int year=sc.nextInt();
                int month=sc.nextInt();
                int day=sc.nextInt();
                int days=0;
                days=main.Days(year,month,day);
                System.out.println(days);
            }
    
        }
        public  int Days(int year,int month,int day)
        {
            int days=0;
            for(int i=1;i<month;i++)
            {
                if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
                {
                    days=days+31;
                }
                else if(i==2)
                    days=days+28;
                else
                    days=days+30;
            }
            if(((year%4==0&&year%100==0)||year%400==0)&&month>2)
                days=days+1;
            days=days+day;
            return days;
        }
    }
    

    说明如下:

    1. 本解法直接用for循环完成,在此之前看到的许多解法都是switch或者数组等方式解决,几乎很少看到这种解法;
    2. 本解法用while循环可以多次循环。
    3. 总体来说,这是一道比较容易的题,并且代码可读性较强。
      在这里插入图片描述
      在这里插入图片描述
      完毕 !!!
    展开全文
  • java指定日期计算一年内第几天和给出一年内第几天算出指定日期 1.计算一年内第几天,部分参考的是...思路就是用给出的一年内的第几天减去每月的天数,很简单。  ...

    java指定日期计算一年内第几天和给出一年内第几天算出指定日期

    1.计算一年内第几天,部分参考的是https://blog.csdn.net/xinpengfei521/article/details/80773221

    2.根据一年内的第几天算出是具体日期是本人原创。

    第二部分我整合了第一部分写在一起,需要的可以下载直接使用!

    思路就是用给出的一年内的第几天减去每个月的天数,很简单。

     

    public class CalculateUtils {
    
    
    
        public static void main(String[] args) {
    
            int year = 2019;//年
            int month = 10;//月
            int day = 31;//日
            
            
            int daysInYear = getDaysInYear(year, month, day);
            System.out.println("【指定日期换算成第几天】");
            System.out.println(year+"年"+month+"月"+day+"日"+"是一年内的第:" + daysInYear+"天");
            //System.out.println("\n【一年的第几天换算对应日期】");
            //System.out.println(year+"年的第"+daysInYear+"天    对应的日期是"+daysToDate(String.valueOf(year), String.valueOf(daysInYear)));
        }
    
        /**
         * get days in this year
         *
         * @param year
         * @param month
         * @param day
         * @return
         */
        public static int getDaysInYear(int year, int month, int day) {
            /*平年二月28天*/
            final int DAYS_28 = 28;
            /*闰年二月29天*/
            final int DAYS_29 = 29;
            /*除了31天的月份,4、6、9、11其他均为30天*/
            final int DAYS_30 = 30;
            /*1、3、5、7、8、10、12月份31天*/
            final int DAYS_31 = 31;
        	
            int totalDays = 0;
    
            switch (month) {
                // 12 月份加的是11月份的天数,依次类推
                case 12:
                    totalDays += DAYS_30;
                case 11:
                    totalDays += DAYS_31;
                case 10:
                    totalDays += DAYS_30;
                case 9:
                    totalDays += DAYS_31;
                case 8:
                    totalDays += DAYS_31;
                case 7:
                    totalDays += DAYS_30;
                case 6:
                    totalDays += DAYS_31;
                case 5:
                    totalDays += DAYS_30;
                case 4:
                    totalDays += DAYS_31;
                case 3:
                    // 判断是否是闰年
                    if (((year / 4 == 0) && (year / 100 != 0)) || (year / 400 == 0)) {
                        totalDays += DAYS_29;
                    } else {
                        totalDays += DAYS_28;
                    }
                case 2:
                    totalDays += DAYS_31;
                case 1: // 如果是1月份就加上输入的天数
                    totalDays += day;
            }
    
            return totalDays;
        }
        
    
        
    }

    运行结果:

    【指定日期换算成第几天】
    2019年10月31日是一年内的第:304天

    【一年的第几天换算对应日期】
    2019年的第304天    对应的日期是2019-10-31

     

    谢谢!欢迎指正!

    转载请注明出处!

    资源下载https://download.csdn.net/download/ed679ed/10707386

    展开全文
  • 几天。 特殊情况:闰年且输入月份大于3时需考虑多加一。 闰年的条件: year除以400能整除,或者year除以4能整除,但是不能是100的倍数 分为三方法 //方法一: static void getTotalDays(int year,int month,int...
  • 说明:一年有 12 月,大 月的天数是 31,小月的天数是 30。2 月的天数比较特殊,遇到闰年是 29 ,否则为 28 。 例如,输入 2011、3,则输出 31 。 注意:使用分支结构语句实现。 public class week1 { ...
  • int months[12]={31,28,31,30,31,30,31,31,30,31,30,31}; printf("1到12月的天数分别是:"); for(i=0;i<12;i++){ sum+=months[i]; printf(" %d -",months[i]); } prin...
  • 注意:以下方法都没有对输入的年月日判断是否正确的语句,所以均须输入正确的年月日,才能返回正确的天数。...输入某年某月某日,判断这一是这一年的第几天&amp;amp;amp;quot;&amp;amp;amp;quot;&
  • 练习题题目:输入某年某月某日,判断这一是这一年的第几天?(Python)
  • public class test14{ public static void ... //int year=2018,month=9,day=30; result(2018,9,30);//可以设置成键盘或其他方式输入。 } private static void result(int year,int month,int day){ int ...
  • JS判断一日期是这一年的第几天

    千次阅读 2020-02-25 22:23:33
    使用JS判断一日期是这一年的第几天。 首先我们先整理一下思路: 假如是12月11日,那么我们需要将1-11月的天数加起来,然后加上12月的11。 假如是1月9日,那么我们只需要将1月的这九就可以了。 那么这样的...
  • System.out.println("这有31天"); System.out.println("请输入号数"); int c = s.nextInt(); if(b==1) { System.out.println("今天是今年的第"+c+"天"); }else if(b==3) { System.out....
  • 根据一数字日期,判断这日期是这一年的第几天 <script type="text/javascript"> // 8.根据一数字日期,判断这日期是这一年的第几天 (有点难) // 例如: 20160211,计算后结果为42 let str = ...
  • 需求说明: 编写 Java 程序,在控制台中输入日期,计算该日期是对应年份的第几天。 实现思路: (1)声明变量 year、month和 date,用于存储日期...(4)输入日期是当前输入年份的第几天的计算,包括两部分...
  • 输入年份、和这一年的第N,最后算出这一是这一年日。(区分闰年) #include <stdio.h> void Rn(int year,int days,int a[2][12]);//输出年月日 int main() { int a[2][12]={{31,28,31,30,31,30,31,...
  • 输入一日期,输出这日期是这一年的第几天 输入格式 输入三整数 y , m , d 分别表示年月日,数据均在int范围内。 输出格式 输出一整数,表示这是今年的第几天。 数据范围 对于 60% 的数据,1≤y,m,d≤105 ...
  • 获取一年有多少|一多少详情请去网站: 如果浏览不顺畅请到原文章出处:https://www.sky8g.com/technology/2670/ 请注意可能会提示风险,这是csdn官网如果不是他们的网址,其他的网址都会提示风险,这是...
  • ms = [31,29,31,30,31,30,31,31,30,31,30,31] elif y%4 == 0: ms = [31,29,31,30,31,30,31,31,30,31,30,31] else: ms = [31,28,31,30,31,30,31,31,30,31,30,31] days = 0 for i in range(1,13): # 确定月份 ...
  • 输入某年某月某日,判断这一是这一年的第几天
  • 根据一数字日期,判断这日期是这一年的第几天 例如: 20160211,计算后结果为42 <script> var riQi = Number(prompt('请输入一日期')) // 从日期当中把年月日分别提取出来 var nian = parseInt(riQi...
  • 计算某一是这一年的第几天 /* switch-case 输入年月日,计算日期是这一年的第几天 (ps:未考虑输入非法情况) */ import java.util.Scanner; class SwitchExer{ public static void main(String[] args){ ...
  • 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 } , { 31 , 29 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 } } ; if ( ( year % 4 == 0 && year ...
  • 判断一日期是一年的第几天

    千次阅读 2016-12-28 15:45:45
    /* ...* All rights reserved. * 作 者: 杨磊 * 完成日期:2016 年 12 月 27 日 * 问题描述:用结构体判断一日期是一年的第几天。 */ #include #include #include #include #include #include using namespace std
  • Java:判断是一年的第几天

    千次阅读 2019-07-27 17:36:43
    属于一日期 如2019 7 27 看这一是今天的第几天。 如果是7月,则我们需要把前6月的天数加起来,再加上输入日期的天数就可得的答案,需要注意的是2月都可能是28可能是29,这取决于是否是闰年。 import...
  • * @ClassName test * @Description 测试类 * @Author asus * @Date 2020/12/15 16:02 * @Version 1.0 **/ public class Main{ /** * @return * @Description 在控制台输入一日期,判断这日期是这一年的第几天?...
  • # 设计一函数传入年月日返回这一是这一年的第几天 def is_leap_year(year): return year % 4 == 0 and year % 100 != 0 or year % 400 == 0 # 2018 1 1 --&gt; 1 # 2016 3 1 --&gt;61 # 1980 11 28 --...
  • #输入某年某月某日,判断这一是这一年的第几天? def outter(func): def inner(): year = int(input("请输入一年份:")) # global year if year % 100 != 0 and year % 4 == 0 or year % 400 == ...
  • 【任务】 输入日期,判断这一是这一年的第几天。 【分析】 根据题意,在计算时之前,我们... 如:以3月5日为例,应该先把前两月的总天数加起来,然后再加上5即本年的第几天,特殊情况,闰年且输入月份大...
  • 输入日期, 判断这一是这一年的第几天? class GetDays: # 获取到用户输入的年份 def __init__(self, data): # 根据‘-’符号分割,得到一数组,如['2021', '6', '11'] self.dates = data.split('-') ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,513
精华内容 11,405
关键字:

一年有几个31天几个30天