巩固 switch 语句的用法。编写一个程序,根据输入的年份数(包括公元前),输出相应的生肖。
时间: 2024-10-17 08:09:25 浏览: 54
在许多编程语言中,`switch`语句常用于根据变量的不同值执行不同的代码块,对于处理生肖这样的情况非常合适。这里是一个简单的Python示例,因为Python不直接支持`switch`语句,我们可以使用`if...elif...else`结构来实现类似的功能。假设我们已经有了一个函数来转换公元年份到生肖,可以这样编写:
```python
def get_zodiac(year):
# 定义生肖对应的年份范围
zodiacs = [(0, 1), (12, 24), (23, 35), (34, 46), (45, 57), (56, 68), (67, 79), (78, 90), (89, 101), (100, 112), (111, 123), (-12, -1)]
for start, end in zodiacs:
if year >= start and year < end:
# 注意这里我们采用负数表示公元前的生肖周期,比如-1代表公元前120年到-109年是牛年
return "公元前" + str(year + 120) if year < 0 else str(year + 120) + "年"
raise ValueError("无效的年份")
try:
input_year = int(input("请输入一个年份(公元前或公元后): "))
print(f"{input_year}年的生肖是:{get_zodiac(input_year)}")
except ValueError as e:
print(e)
```
在这个例子中,`switch`语句的逻辑已经被替换为一系列条件判断,当输入的年份落在某个生肖范围内时,返回相应的生肖信息。
阅读全文