从键盘输入一批学生的成绩,计算平均成绩,最高分和最低分,当输入的学生成绩小于零时停止,所有结果保留2位小数。
时间: 2023-06-17 08:03:35 浏览: 68
下面是Python的代码实现:
```python
scores = []
while True:
score = float(input("请输入学生成绩(输入负数结束):"))
if score < 0:
break
scores.append(score)
count = len(scores)
if count == 0:
print("没有输入任何成绩!")
else:
avg_score = sum(scores) / count
max_score = max(scores)
min_score = min(scores)
print("平均成绩:{:.2f}".format(avg_score))
print("最高分:{:.2f}".format(max_score))
print("最低分:{:.2f}".format(min_score))
```
首先,我们定义一个空列表`scores`,用于存储输入的学生成绩。然后,我们通过一个`while`循环不断输入成绩,如果输入的成绩小于零,则跳出循环。注意,`input`函数返回的是字符串类型,需要使用`float`函数将其转换为浮点数。
接着,我们使用`len`函数计算学生人数,如果为零,则输出“没有输入任何成绩!”;否则,我们使用`sum`、`max`和`min`函数分别计算平均成绩、最高分和最低分,并使用`format`函数格式化输出结果,保留两位小数。
相关问题
用c语言写一个程序,输入任意个正事,计算它们的和,当输入数据小于零时结束输入
下面是一个用C语言编写的计算输入数据和的程序,可以输入任意个正整数,当输入数字小于零时结束输入,并输出它们的和:
```c
#include <stdio.h>
int main()
{
int num, sum = 0;
printf("请输入正整数,输入负数结束:\n");
while (1) {
scanf("%d", &num);
if (num < 0) {
break;
}
sum += num;
}
printf("输入的所有正整数的和为:%d\n", sum);
return 0;
}
```
程序使用了一个 while 循环,当输入的数字小于 0 时,跳出循环。在循环中,每次输入一个数字,如果输入的数字大于等于 0,则将其加入到 sum 中去。最终,程序输出输入的所有正整数的和。
输入一批整数,统计正数的个数并计算它们的和。当输入负数或零时,表示输入结束。
好的,这是一个简单的计算问题。以下是代码示例:
```python
count = 0
sum = 0
while True:
num = int(input("请输入一个整数:"))
if num <= 0:
break
count += 1
sum += num
print("正数个数为:", count)
print("正数和为:", sum)
```
这段代码会不断循环,直到输入的数为负数或零时结束。在循环中,每输入一个正数,计数器 count 就加 1,同时将该数加入到和 sum 中。最后输出正数的个数和它们的和。