测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A35935. 中国电子学会主办的“全国青少年信息素养大赛”总决赛要开始了,组委会的老师要统计各个赛项报名的人数。请帮着写一个程序,实现该功能:统计时,输入各项编号表示对应的比赛:1:Python编程挑战赛2:开源鸿蒙主题赛3:智慧物流挑战赛0:表示录入完毕要求:一、循环执行二、当输入错误数据,可以提示“没有此编号请重复输入”;三、当输入0后,自动统计所有项目的参赛人数,并输出出来;如下面的案例:输入样例:请输…

填空题 较易

题目描述

中国电子学会主办的“全国青少年信息素养大赛”总决赛要开始了,组委会的老师要统计各个赛项报名的人数。请帮着写一个程序,实现该功能:统计时,输入各项编号表示对应的比赛:

1:Python编程挑战赛

2:开源鸿蒙主题赛

3:智慧物流挑战赛

0:表示录入完毕

要求:

一、循环执行

二、当输入错误数据,可以提示“没有此编号请重复输入”;

三、当输入0后,自动统计所有项目的参赛人数,并输出出来;如下面的案例:

输入样例:

请输入赛项编号:

1

请输入赛项编号:

2

请输入赛项编号:

3

请输入赛项编号:

2

请输入赛项编号:

1

请输入赛项编号:

1

请输入赛项编号:

0

输出样例:

Python编程挑战赛:3人

开源鸿蒙主题赛:2人

智慧物流挑战赛:1人

参考答案

#参考程序1: d={'Python编程挑战赛':0,'开源鸿蒙主题赛':0,'智慧物流挑战赛':0} while True: num=input('请输入赛项编号:') if num=='1': d['Python编程挑战赛']+=1 elif num=='2': d['开源鸿蒙主题赛']+=1 elif num=='3': d['智慧物流挑战赛']+=1 elif num=='0': break else: print('没有此编号请重新输入') continue print('统计结果如下:') for i in d: print(i+':'+str(d[i])+'人') #参考程序2: sum1=0 #Python编程挑战赛 sum2=0 #开源鸿蒙主题赛 sum3=0 #智慧物流挑战赛 while True: num=input('请输入赛项编号:') if num=='1': sum1+=1 elif num=='2': sum2+=1 elif num=='3': sum3+=1 elif num=='0': break else: print('没有此编号请重新输入') continue print('统计结果如下:') print('Python编程挑战赛:'+str(sum1)) print('开源鸿蒙主题赛:'+str(sum2)) print('智慧物流挑战赛:'+str(sum3))

答案解析

评分标准:

(1)有循环语句,可以重复输入数据;(4分)

(2)当输入0,循环可以正确的结束;(2分)

(3)有条件判断语句,可以统计对应赛项的人数;(4分)

(4)当输入错误数据,可以提示“没有此编号请重复输入”;(4分)

(5)可以按照正确的格式打印;(2分)

(6)程序运行结果正确。(4分)

上一题 下一题