从键盘上输入若干学生成绩,计算平均成绩直至输入负数为止
时间: 2023-05-25 17:04:28 浏览: 67
```
sum = 0
count = 0
while True:
score = float(input("请输入学生成绩:"))
if score < 0:
break
else:
sum += score
count += 1
if count == 0:
print("没有输入成绩")
else:
print("平均成绩为:", sum/count)
```
说明:代码中使用了一个无限循环,每次输入一个成绩,如果成绩小于0则退出循环。否则将成绩累加到变量sum中,并将成绩个数count加1。最后判断是否有输入过成绩,若有则计算平均成绩并输出,否则提示没有输入成绩。
相关问题
C语言中 从键盘上输入若干学生成绩,计算平均成绩直至输入负数为止
```
#include <stdio.h>
int main() {
int score; // 存储输入的成绩
int sum = 0; // 存储所有成绩的总和
int count = 0; // 存储输入的成绩数量
while (1) { // 无限循环,直到遇到负数才退出循环
printf("请输入一个成绩:");
scanf("%d", &score);
if (score < 0) { // 如果输入的是负数,则退出循环
break;
}
sum += score; // 累加成绩总和
count++; // 计数器加1
}
if (count > 0) { // 如果输入的成绩数量大于0,则计算平均成绩并输出
double average = (double)sum / count; // 计算平均成绩
printf("平均成绩为:%.2f\n", average);
} else { // 如果没有输入任何成绩,则输出提示信息
printf("没有输入成绩\n");
}
return 0;
}
```
从键盘上输入若干学生的成绩,计算平均分并输出最高成绩和最低成绩,当输入负数时结束
可以使用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;
}
```