编程序实现:输入某个月份的天数以及这个月的1日的星期值(星期日到星期六分别用0到6之间的整数表示),输出该月份的公历日历(要求用循环控制打印)。 常见问题: 如何控制某个月1日的打印位置? 答:根据该月份1日的星期值,控制在“1”之前打印相应个数的空格(建议用循环控制)。 输入格式: 输入该月份的天数以及1日的星期值,数据之间以空格分隔。 输出格式: 每项数据占4个字符宽度,右对齐。
时间: 2024-02-25 13:51:53 浏览: 174
py代码-例2-2-2 输入0-6的整数,把它作为星期,输入对应的星期日,一直到星期六
好的,以下是 Python 代码实现:
```python
days, weekday = map(int, input().split())
print("Sun Mon Tue Wed Thu Fri Sat")
print("---- ---- ---- ---- ---- ---- ----")
for i in range(weekday):
print(" ", end="")
for i in range(1, days + 1):
print("{0:>4}".format(i), end="")
if (i + weekday) % 7 == 0:
print()
elif i == days:
print()
else:
print(" ", end="")
```
代码说明:
首先输入该月份的天数以及1日的星期值,并用 `map` 函数将输入的字符串转换为整数,分别赋值给 `days` 和 `weekday` 变量。
然后,先输出星期的标头,再输出分隔线。
接着,用循环控制打印相应个数的空格,使得该月1日的打印位置正确。
最后,再用循环控制打印该月份的公历日历,每个日期占4个字符宽度,右对齐,每行7个日期,打印完一行后换行,最后一行打印完日期后也要换行。
阅读全文