从键盘上输入若干学生的成绩,计算平均分并输出最高成绩和最低成绩,当输入负数时结束
时间: 2023-11-20 12:54:09 浏览: 198
可以使用while循环语句实现该功能。首先需要定义一个计数器count和一个累加器sum,用于统计输入的成绩个数和总成绩。同时也需要定义一个变量max和min,用于记录最高分和最低分。当输入的成绩小于0时,循环结束,计算平均分并输出最高分和最低分。
代码如下:
```
#include <stdio.h>
int main() {
float score, max, min, sum = 0;
int count = 0;
scanf("%f", &score);
max = min = score;
while (score >= 0) {
count++;
sum += score;
if (score > max) {
max = score;
}
if (score < min) {
min = score;
}
scanf("%f", &score);
}
if (count > 0) {
printf("平均分为:%.2f\n最高成绩为:%.2f\n最低成绩为:%.2f\n", sum / count, max, min);
} else {
printf("未输入成绩\n");
}
return 0;
}
```
相关问题
java从键盘上输入若干个学生的成绩,统计并输出最高成绩、最低成绩和平均成绩,当输入负数时结束输入从键盘上输入若干个学生的成绩,统计并输出最高成绩、最低成绩和平均成绩,当输入负数时结束输入从键盘上输入若干个学生的成绩,统计并输出最高成绩、最低成绩和平均成绩,当输入负数时结束输入
以下是用Java实现从键盘上输入若干个学生的成绩,并计算出最高成绩、最低成绩和平均成绩的代码:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt(); // 输入学生数
int[] scores = new int[n]; // 分配存储空间
for (int i = 0; i < n; i++) {
scores[i] = scanner.nextInt(); // 输入成绩
}
int maxScore = scores[0], minScore = scores[0], sumScore = 0;
for (int i = 0; i < n; i++) {
if (scores[i] > maxScore) {
maxScore = scores[i]; // 记录最高分
}
if (scores[i] < minScore) {
minScore = scores[i]; // 记录最低分
}
sumScore += scores[i]; // 计算总分
}
double avgScore = (double) sumScore / n; // 计算平均分
System.out.println("最高分:" + maxScore);
System.out.println("最低分:" + minScore);
System.out.println("平均分:" + avgScore);
}
}
```
当输入负数时,程序将停止输入并计算出最高分、最低分和平均分,并输出到控制台。
从键盘上输入(采取一次输入一个的方式)若干学生的成绩,计算平均分并输出最高成绩和最低成绩,当输入负数时结束
输入学生的成绩,计算平均分并输出最高成绩和最低成绩,当输入负数时结束。
```python
# Python代码示例
scores = []
while True:
score = float(input("请输入学生成绩:"))
if score < 0:
break
scores.append(score)
average = sum(scores) / len(scores)
max_score = max(scores)
min_score = min(scores)
print("平均分为:{:.2f},最高分为:{:.2f},最低分为:{:.2f}".format(average, max_score, min_score))
```
阅读全文