Python代码简单实现,输入n个学生的成绩(n也由键盘输入),统计平均分及成绩不及格的人数。 输入格式: 1.第一行输入一个正整数,表示指定输入的人数n。 2.从第二行开始每行输入一个数,共n行,表示n个成绩。
时间: 2024-10-10 20:16:22 浏览: 94
当然可以,下面是一个简单的Python程序,用于实现这个功能:
```python
def calculate_scores():
n = int(input("请输入学生人数:")) # 输入学生人数
scores = [] # 初始化一个列表来存储成绩
for i in range(n):
score = float(input(f"请输入第{i+1}位同学的成绩:")) # 输入每个学生的成绩
scores.append(score)
average = sum(scores) / n # 计算平均分
count_failing = sum(1 for score in scores if score < 60) # 统计不及格人数 (假设及格线为60分)
print(f"平均分为:{average}")
print(f"成绩不及格的学生有:{count_failing}")
calculate_scores()
```
在这个程序中,我们首先通过`input()`函数获取用户输入的学生人数,然后循环读取每个学生的成绩,并将其添加到`scores`列表中。接着计算所有成绩的总和除以人数得到平均分,使用列表推导式检查哪些分数低于及格线(这里设置为60),并将满足条件的计数累加。最后,打印出平均分和不及格的人数。
如果你运行这个程序,记得按提示输入相应的数值。
相关问题
python-循环:统计成绩,输入一批学生成绩,计算平均成绩,并统计不及格学生人数
grades = [] # 存放成绩的列表
count = 0 # 不及格学生人数
total = 0 # 总分
# 循环输入成绩
while True:
grade = input("请输入学生成绩(输入Q或q结束):")
if grade.lower() == "q":
break
grade = int(grade)
# 统计不及格学生人数
if grade < 60:
count += 1
# 将成绩添加到列表中
grades.append(grade)
# 累加总分
total += grade
# 计算平均成绩
if len(grades) > 0:
avg = total / len(grades)
else:
avg = 0
# 输出结果
print("总成绩为:", total)
print("平均成绩为:", avg)
print("不及格学生人数为:", count)
用Python实现输入若干学生成绩,如果成绩小于0则重新输入。统计学生人数和平均成绩
可以使用以下代码实现:
```python
num_students = int(input("请输入学生人数:"))
total_score = 0
count = 0
for i in range(num_students):
score = -1
while score < 0:
score = float(input("请输入第{}个学生的成绩:".format(i+1)))
total_score += score
count += 1
average_score = total_score / count
print("学生人数为:{},平均成绩为:{:.2f}".format(count, average_score))
```
这段代码会先让用户输入学生人数,然后使用 for 循环逐个输入每个学生的成绩。如果输入的成绩小于 0,则会要求用户重新输入。最后,统计总成绩和学生人数,计算平均成绩并输出。
阅读全文