【问题描述】 编写一个程序,要求用户输入一个两位数,然后输出显示该数的英文单词。提示:把数分解为两个数字。用一个switch语句显示第一位数字对应的单词(“twenty”、“thirty”等),用第二个switch语句显示第二位数字对应的单词。不要忘记11~19需要特殊处理。 【输入形式】 一个十进制两位整数 【输出形式】 输入的整数所对应的英文单词(所含字母均小写) 【样例输入】 85 【样例输出】 eighty-five 【样例说明】 无 【评分标准】 正确性
时间: 2023-05-26 07:01:30 浏览: 190
代码如下:
```python
num = int(input()) # 获取输入的两位数
tens = num // 10 # 十位数
ones = num % 10 # 个位数
# 定义数字和其对应的单词
word_dict = {1: "one", 2: "two", 3: "three", 4: "four", 5: "five", 6: "six", 7: "seven", 8: "eight", 9: "nine", 10: "ten", 11: "eleven", 12: "twelve", 13: "thirteen", 14: "fourteen", 15: "fifteen", 16: "sixteen", 17: "seventeen", 18: "eighteen", 19: "nineteen", 20: "twenty", 30: "thirty", 40: "forty", 50: "fifty", 60: "sixty", 70: "seventy", 80: "eighty", 90: "ninety"}
# 输出结果
if num in word_dict:
print(word_dict[num])
else:
if num < 20:
word = word_dict[num]
else:
word = word_dict[tens * 10]
if ones != 0:
word += "-" + word_dict[ones]
print(word)
```
思路解析:
首先要读取输入的两位数,将其分解为十位数和个位数。然后定义一个数字和其对应单词的字典,包括11~19和20、30、40等整十数与其对应的单词。
根据输入的数判断是否在字典中,若在则直接输出该数字对应的单词。若不在,则首先需要判断是否小于20,若是则其对应的单词直接在字典中查询即可。若不是,则将其十位数对应的单词和个位数对应的单词以“-”符号连接起来输出即可。
阅读全文