第一题
编程实现:
小青有 N 个小球,小蓝有 M 个小球,请计算他们一共有多少个小球。
例如:N = 2,M = 3,表示小青有 2 个小球,小蓝有 3 个小球,一共有 5 个小球(5 = 2 + 3)。
输入描述:
第一行输入一个整数 N(1≤N≤1000),表示小青的小球数量第二行输入一个整数 M(1≤M≤1000),表示小蓝的小球数量
输出描述:
输出一个整数,表示一共有多少个小球
样例输入:
2
3
样例输出:
5
参考实现
下面是一个参考实现。
注意,这里没有考虑考试系统自动判题(OJ系统)的需求,在输入输出中都有不需要的提示,如果使用我们的少儿编程OJ系统自动判题,请将对应的提示输出给删除即可。
def count_balls(n, m):
# 计算总球数
return n + m
def main():
N = int(input("输入小青的小球数量(1≤N≤1000):"))
if not (1 <= N <= 1000):
print("小青的小球数量无效,应在1到1000之间。")
return
M = int(input("输入小蓝的小球数量(1≤M≤1000):"))
if not (1 <= M <= 1000):
print("小蓝的小球数量无效,应在1到1000之间。")
return
total_balls = count_balls(N, M)
print("一共有 {} 个小球。".format(total_balls))
if __name__ == "__main__":
main()
第二题
编程实现:
给定一个长度为 11 的字符串 S,表示电话号码,然后将电话号码中第三位数字后的连续四位数字用“*”替换,并输出替换后的字符串。
例如:S = “13900001234”,用“*”替换第三位数字后的连续四位数字为“139****1234”。
输入描述:
输入一个长度为 11 的字符串 S(字符串仅包含 0~9 之间的数字且首个字符只能为 1),表示电话号码
输出描述:
输出一个字符串,表示替换后的字符串
样例输入:
13900001234
样例输出:
139****1234
参考实现
def mask_phone_number(phone_number):
# 检查电话号码是否有效
if len(phone_number) != 11 or not phone_number.isdigit() or phone_number[0] != '1':
return "无效的电话号码"
# 将第三位数字后的连续四位替换为 '*'
masked_number = phone_number[:3] + '****' + phone_number[7:]
return masked_number
def main():
phone_number = input("输入一个长度为 11 的电话号码:")
result = mask_phone_number(phone_number)
print("替换后的电话号码:", result)
if __name__ == "__main__":
main()
第三题
编程实现:
给定 N 个长度不同的字符串,请将每个字符串的最后一个字符删除,并按长度从短到长的顺序换行输出。
例如:N = 3,3 个字符串分别为 dfgas、abc、cbdf,删除最后一个字符后为 dfga、ab、cbd;
按长度从短到长的顺序换行输出为:
ab cbd dfga
输入描述:
第一行输入一个整数 N(2≤N≤10),表示字符串的个数
第二行输入 N 个长度不同的字符串(2≤字符串长度≤20),字符串之间以一个空格隔开
输出描述:
输出 N 行字符串,表示所有字符串删除最后一个字符后,按长度从短到长的顺序换行输出的结果
样例输入:
3
dfgas abc cbdf
样例输出:
ab cbd dfga
参考实现:
下面是一个参考实现。
def process_strings(strings):
# 删除每个字符串的最后一个字符
processed_strings = [s[:-1] for s in strings]
# 根据长度排序字符串
processed_strings.sort(key=len)
# 使用空格连接字符串
return ' '.join(processed_strings)
def main():
N = int(input("输入字符串的个数 (2≤N≤10):"))
if not (2 <= N <= 10):
print("字符串个数无效。它应该在2到10之间。")
return
input_str = input("输入 {} 个用空格分隔的字符串:".format(N))
strings = input_str.split()
# 检查字符串长度约束
if any(not (2 <= len(s) <= 20) for s in strings):
print("字符串长度必须在2到20字符之间。")
return
output = process_strings(strings)
print("处理后的字符串:", output)
if __name__ == "__main__":
main()
可以直接在我们的少儿编程在线Python编辑器中运行它。这三道题也已经收录到了我们的OJ系统中。