用数组请对某次考试的分数,统计各分数段人数,统计原则:分别对10分以下、 10-19分、20-29分、30-39分、40-49分、50-59分、60-69分、70- 79,80-89分,90到99分,100分为一段,共11段。 注意:如果输入分数不在[0,100]之间,不参与统计。 输入格式: 先输入一个整数n,表示将输入n个分数。 再输入n个分数,范围在[0~100]. 每个数用空格间隔。 输出格式: 每一行输出一个分数段的人数统计结果。分数段用0~10表示。
时间: 2023-06-09 14:06:41 浏览: 1239
好的,我明白了您的要求,请看下面的代码:
```python
n = int(input())
scores = list(map(int, input().split()))
counts = [0] * 11 # 初始化11个分数段的计数器
for score in scores:
if 0 <= score <= 100:
idx = score // 10 # 计算分数属于哪个分数段
counts[idx] += 1
# 输出各分数段人数
for i in range(11):
if i < 10:
print("%d-%d: %d" % (i * 10, i * 10 + 9, counts[i]))
else:
print("100: %d" % counts[i])
```
以上代码通过输入n和n个分数,统计各分数段人数并输出。分数段使用0~10表示,10分数段表示为0-9分,以此类推,最后一段为100分。如果输入分数不在[0,100]之间,则不参与统计。
相关问题
7-1 统计分数段人数 分数 10 作者 张庆 单位 集美大学 请对某次考试的分数,统计各分数段人数,统计原则:分别对10分以下、10-19分、20-29分、30-39分、40-49分、50-59分、60-69分、70-79,80-89分,90到99分,100分为一
组进行统计。
解题思路:
1. 定义10个变量,分别表示各个分数段的人数,初始值均为0。
2. 循环输入学生的分数,每输入一个分数就根据其值将相应的变量加1。
3. 循环结束后,输出各个分数段的人数。
参考代码:
```python
# 定义各个分数段的人数变量,初始值均为0
under_10 = 0
between_10_and_19 = 0
between_20_and_29 = 0
between_30_and_39 = 0
between_40_and_49 = 0
between_50_and_59 = 0
between_60_and_69 = 0
between_70_and_79 = 0
between_80_and_89 = 0
between_90_and_99 = 0
full_score = 0
# 循环输入学生的分数
while True:
score = input("请输入学生的分数(输入-1结束):")
if score == "-1":
break
score = int(score)
if score < 0 or score > 100:
print("分数无效,请重新输入!")
continue
if score < 10:
under_10 += 1
elif score < 20:
between_10_and_19 += 1
elif score < 30:
between_20_and_29 += 1
elif score < 40:
between_30_and_39 += 1
elif score < 50:
between_40_and_49 += 1
elif score < 60:
between_50_and_59 += 1
elif score < 70:
between_60_and_69 += 1
elif score < 80:
between_70_and_79 += 1
elif score < 90:
between_80_and_89 += 1
elif score < 100:
between_90_and_99 += 1
else:
full_score += 1
# 输出各个分数段的人数
print("10分以下:", under_10, "人")
print("10-19分:", between_10_and_19, "人")
print("20-29分:", between_20_and_29, "人")
print("30-39分:", between_30_and_39, "人")
print("40-49分:", between_40_and_49, "人")
print("50-59分:", between_50_and_59, "人")
print("60-69分:", between_60_and_69, "人")
print("70-79分:", between_70_and_79, "人")
print("80-89分:", between_80_and_89, "人")
print("90-99分:", between_90_and_99, "人")
print("满分:", full_score, "人")
```
请对某次考试的分数,统计各分数段人数,统计原则:分别对10分以下、10-19分、20-29分、30-39分、40-49分、50-59分、60-69分、70-79,80-89分,90到99分,100分为一段,共11段 。 注意:如果输入分数不在[0,100]之间,不参与统计。
输入:一个包含多个整数的列表,表示每个人的分数。
输出:一个包含11个整数的列表,表示各分数段的人数,按分数段从小到大排列。
例如,输入[23, 88, 61, 45, 77, 91, 85, 72, 99, 100],输出[0, 0, 0, 1, 1, 1, 2, 2, 1, 1, 1]。
解释:在10-19分之间没有人,20-29分之间没有人,30-39分之间没有人,40-49分之间有1个人,50-59分之间有1个人,60-69分之间有2个人,70-79分之间有2个人,80-89分之间有1个人,90-99分之间有1个人,100分有1个人。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)