解题思路: 多分支

注意事项:注意这里的输入要判断两种情况,如果第一行输入的数据只有一个的话 ,那就是分多行输入数据,如果第一行输入的数据是多个的话,那就是一行输入全部数据。

参考代码:

all_score = list(map(eval, input().split()))  # 接收输入的数据并转换为列表
if len(all_score) == 1:  # 输入方式为多行
    score = all_score[0]    # 将第一次接收的成绩赋值给成绩
    while score != 0:  # 当接收到的数据为0,终止接收
        score = eval(input())   # 每行接收的成绩
        all_score.append(score)     # 在成绩列表中追加
level = {">=85:": 0, "60-84:": 0, "<60:": 0}  # 定义一个字典,存放的是各水平的人数
for i in all_score:  # 遍历各水平人数的列表
    if i != 0:  # 成绩为0 不计入水平人数
        if i >= 85:
            level[">=85:"] += 1  # 在相应水平人数的字典加一人
        elif i >= 60:
            level["60-84:"] += 1
        else:
            level["<60:"] += 1
for i in level.keys():  # 遍历水平人数的字典并输出
    print(f"{i}{level[i]}")


点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论