1.编写程序:输入10个学生的成绩,求出平均成绩,并将低于平均成绩的分数显示出来。C语言并且带有程序分析
时间: 2024-02-13 22:02:14 浏览: 363
编写程序,输入并保存5名学生的信息,计算出平均分,再按照成绩从高到低的顺序输出他们的信息。学生信息包括:学号、姓名、成绩。
以下是使用 C 语言编写的程序:
```c
#include <stdio.h>
int main() {
int scores[10];
int i;
float sum = 0, average;
// 输入每个学生的成绩
for (i = 0; i < 10; i++) {
printf("请输入第 %d 个学生的成绩:", i+1);
scanf("%d", &scores[i]);
sum += scores[i];
}
// 计算平均成绩
average = sum / 10;
// 输出低于平均成绩的分数
printf("低于平均成绩的分数为:\n");
for (i = 0; i < 10; i++) {
if (scores[i] < average) {
printf("%d ", scores[i]);
}
}
return 0;
}
```
程序分析:
1. 定义一个包含 10 个元素的整型数组 `scores`,用于存储每个学生的成绩;
2. 定义变量 `i`,用于记录当前输入的学生成绩的下标;
3. 定义变量 `sum`,用于记录所有学生成绩的总和;
4. 使用 for 循环,当 `i < 10` 时,循环执行以下操作:
1. 提示用户输入第 `i+1` 个学生的成绩;
2. 使用 `scanf` 函数读取用户输入的整数,并存储到 `scores[i]` 中;
3. 将 `scores[i]` 的值累加到 `sum` 中;
4. 将 `i` 的值加 1,以便下一次输入下一个学生的成绩;
5. 计算平均成绩,即将 `sum` 除以学生的数量 10,得到平均成绩 `average`;
6. 使用 for 循环,当 `i < 10` 时,循环执行以下操作:
1. 判断当前学生的成绩是否低于平均成绩,如果是,则执行以下操作:
1. 使用 `printf` 函数输出该学生的成绩;
7. 程序结束。
注意:本题中要求将低于平均成绩的分数显示出来,因此只需要在第二个 for 循环中,判断当前学生的成绩是否低于平均成绩即可。
阅读全文