Python源代码如下:
# -*- coding: UTF-8 -*-"""简述:要求输入某年某月某日提问:求判断输入日期是当年中的第几天?Python解题思路分析:我们就以3月5日这一天为例。首先把前两个月的加起来,然后再加上5天即本年的第几天。这里有一种特殊的情况,就是闰月,遇到这种情况且输入月份大于2时需考虑多加一天"""year = int(input('请输入年份:\\n'))month = int(input('请输入月份(1-12):\\n'))day = int(input('请输入日期:\\n'))months = (0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334) # 定义list,每个月份事本年的天数if 0 < month <= 12: sum = months[month - 1] # 通过下标获取月份的天数 sum += day # 用月份获取出来的天数加上日 leap = 0 # 定义变量用于判断闰年 if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)): # 满足其中两个条件,则本年未闰年 leap = 1 if (leap == 1) and (month > 2): # 若为闰年,且月份必须大于2月 sum += 1 print('这是本年中的第%s天.' % sum)else: print('月份输入错误')
运行结果:
请输入年份:18请输入月份(1-12):11请输入日期:23这是本年中的第327天.