5、编写程序。问题描述:输入一个日期(例如20100722)要求校验 日 期的有效性,例如月不能为负数或大于12,日不能为 负数或大于31,2月最多不能超过29天等并按_年月_日的格式输出(例
时间: 2024-05-14 21:13:44 浏览: 49
如输入20100722,输出为2010年07月22日)。
```python
date = input("请输入日期(格式为YYYYMMDD): ")
year = int(date[:4])
month = int(date[4:6])
day = int(date[6:])
# 判断年份是否为闰年
is_leap_year = False
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
is_leap_year = True
# 判断日期的有效性
if month < 1 or month > 12:
print("月份无效")
elif day < 1 or day > 31:
print("日期无效")
elif month == 2:
if is_leap_year and day > 29:
print("日期无效")
elif not is_leap_year and day > 28:
print("日期无效")
else:
print("%d年%02d月%02d日" % (year, month, day))
elif month in [4, 6, 9, 11]:
if day > 30:
print("日期无效")
else:
print("%d年%02d月%02d日" % (year, month, day))
else:
print("%d年%02d月%02d日" % (year, month, day))
```
示例输出:
```
请输入日期(格式为YYYYMMDD): 20100722
2010年07月22日
```
阅读全文