从键盘输入若干个(最多不超过100个)成绩存入一个数组中,直到输入的成绩小于零为止。计算平均分,并输出所有低于平均分的成绩。
时间: 2023-03-20 18:08:53 浏览: 178
可以使用以下步骤实现:
1. 定义一个数组,用于存储输入的成绩。
2. 使用循环从键盘输入成绩,直到输入的成绩小于零为止,将成绩存入数组中。
3. 计算平均分,可以使用数组中所有成绩的和除以成绩的数量。
4. 使用循环遍历数组,输出所有低于平均分的成绩。
示例代码如下:
```python
# 定义一个数组,用于存储输入的成绩
scores = []
# 使用循环从键盘输入成绩,直到输入的成绩小于零为止,将成绩存入数组中
while True:
score = float(input("请输入成绩:"))
if score < :
break
scores.append(score)
# 计算平均分
average = sum(scores) / len(scores)
# 使用循环遍历数组,输出所有低于平均分的成绩
print("平均分为:", average)
print("低于平均分的成绩有:")
for score in scores:
if score < average:
print(score)
```
注意,这里假设输入的成绩都是合法的数字,如果需要对输入进行校验,可以添加相应的代码。
相关问题
C语言从键盘输入若干个(最多不超过100个)正整数,存入一个数组中,直到输入的数小于零为止,将这些数倒序输出,每个数占5位宽度
可以使用循环结构和数组来实现这个功能。具体代码如下:
```c
#include <stdio.h>
#define MAX_SIZE 100 // 数组最大长度
int main() {
int arr[MAX_SIZE]; // 定义数组
int size = 0; // 数组实际长度
int i, num;
// 循环输入正整数,直到输入负数为止
while (1) {
printf("请输入一个正整数:");
scanf("%d", &num);
if (num < 0) {
break;
}
// 将输入的正整数存入数组中
arr[size] = num;
size++;
if (size >= MAX_SIZE) { // 如果数组已满,则退出循环
printf("数组已满!\n");
break;
}
}
// 倒序输出数组中的元素
printf("倒序输出数组:");
for (i = size - 1; i >= 0; i--) {
printf("%5d", arr[i]); // 每个数占5位宽度
}
printf("\n");
return 0;
}
```
运行程序后,可以输入若干个正整数,最后输入一个负数即可结束输入。程序会将输入的正整数存入数组中,并倒序输出数组中的元素。
c语言从键盘输入10个成绩存入一个数组中,计算平均分,并输出所有低于平均分的成绩
下面是一份示例代码,可以满足你的要求:
```c
#include <stdio.h>
#define NUM_SCORES 10
int main() {
int scores[NUM_SCORES];
int sum = 0;
float avg;
// 输入成绩并求和
for (int i = 0; i < NUM_SCORES; i++) {
printf("请输入第%d个成绩:", i+1);
scanf("%d", &scores[i]);
sum += scores[i];
}
// 计算平均分
avg = (float)sum / NUM_SCORES;
printf("平均分为:%.2f\n", avg);
// 输出低于平均分的成绩
printf("低于平均分的成绩有:");
for (int i = 0; i < NUM_SCORES; i++) {
if (scores[i] < avg) {
printf("%d ", scores[i]);
}
}
printf("\n");
return 0;
}
```
代码中使用了一个常量 `NUM_SCORES` 来表示成绩的数量,可以根据实际需要修改。输入成绩时使用了循环,并将每个成绩存储到数组 `scores` 中。求和和计算平均分时,需要将成绩转换为浮点数,以保证精度。最后,通过遍历数组中的成绩,输出低于平均分的成绩。
阅读全文