刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

中国电子学会主办的"全国青少年信息素养大赛"总决赛要开始了,组委会的老师要统计各个赛项报名的人数。请帮着写一个程序,实现该功能:统计时,输入各项编号表示对应的比赛:
1:Python编程挑战赛
2:开源鸿蒙主题赛
3:智慧物流挑战赛
0:表示录入完毕

要求:

一、循环执行

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

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


输入样例:
请输入赛项编号:
1
请输入赛项编号:
2
请输入赛项编号:
3
请输入赛项编号:
2
请输入赛项编号:
1
请输入赛项编号:
1
请输入赛项编号:
0
输出样例:
Python编程挑战赛:3人
开源鸿蒙主题赛:2人

智慧物流挑战赛:1人

友情提示:

由于考试平台暂不支持eval()命令,同学们可以选用其他命令;当然如果您使用了,只要程序是正确的,我们阅卷时依然按照正常处理。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

参考程序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))

解析:

【喵呜刷题小喵解析】:本题要求编写一个程序,用于统计各个比赛项目的参赛人数。程序需要循环执行,直到输入0为止。在输入时,根据输入的编号判断对应的比赛项目,并增加相应的人数。当输入0时,程序自动统计所有项目的参赛人数,并输出出来。参考程序1中,使用字典d来存储每个比赛项目的人数,字典的键为比赛项目的名称,值为对应的人数。程序使用while True循环来不断接收用户输入,根据输入的编号判断对应的比赛项目,并增加相应的人数。当输入0时,程序跳出循环,并输出统计结果。参考程序2中,使用三个变量sum1、sum2、sum3来分别存储Python编程挑战赛、开源鸿蒙主题赛、智慧物流挑战赛的人数。程序同样使用while True循环来不断接收用户输入,根据输入的编号判断对应的比赛项目,并增加相应的人数。当输入0时,程序跳出循环,并输出统计结果。两种参考程序都能够满足题目的要求,根据用户输入的编号统计参赛人数,并在输入0后输出统计结果。参考程序1使用了字典来存储人数,方便查询和遍历;参考程序2使用了三个变量来分别存储人数,简单明了。两种方式都可以实现题目要求的功能,可以根据个人喜好和实际情况选择使用。
创作类型:
原创

本文链接:中国电子学会主办的"全国青少年信息素养大赛"总决赛要开始了,组委会的老师要统计各个赛项报名的人数。请

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share