输入十个学生一门课的成绩,求出平均分,并打印低于平均分的成绩。C语言
时间: 2024-05-11 19:15:17 浏览: 10
可以使用数组和循环结构实现此功能。具体代码如下:
```c
#include <stdio.h>
int main() {
const int LEN = 10; // 学生人数
float scores[LEN]; // 成绩数组
float sum = 0; // 成绩总和
// 输入成绩
printf("请输入 %d 个学生的成绩:\n", LEN);
for (int i = 0; i < LEN; i++) {
scanf("%f", &scores[i]);
sum += scores[i];
}
// 计算平均分
float average = sum / LEN;
printf("平均分为:%.2f\n", average);
// 输出低于平均分的成绩
printf("低于平均分的成绩有:");
for (int i = 0; i < LEN; i++) {
if (scores[i] < average) {
printf("%.1f ", scores[i]);
}
}
printf("\n");
return 0;
}
```
相关问题
c语言代码求出n个学生一门课程中的最高成绩和最低成绩及高于平均成绩的人数
好的,这个问题是关于编程的,我可以回答。以下是求解过程:
```c
#include <stdio.h>
int main() {
int n, i;
printf("请输入学生人数:");
scanf("%d", &n);
int score[n];
double sum = 0;
for (i = 0; i < n; i++) {
printf("请输入第%d个学生的成绩:", i + 1);
scanf("%d", &score[i]);
sum += score[i];
}
double avg = sum / n;
int max = score[0], min = score[0], count = 0;
for (i = 1; i < n; i++) {
if (score[i] > max) max = score[i];
if (score[i] < min) min = score[i];
if (score[i] > avg) count++;
}
printf("最高成绩:%d\n最低成绩:%d\n高于平均成绩的人数:%d\n", max, min, count);
return 0;
}
```
输入学生人数和每个学生的成绩,计算平均成绩后遍历数组查找最高、最低成绩以及高于平均成绩的人数,并输出结果。
使用C语言求出n个学生一门课程中的最高成绩和最低成绩及高于平均成绩的人数。
这是一个有关编程的问题,我可以回答。你可以考虑使用数组,先输入n个学生的成绩,然后遍历整个数组,分别求出最高分、最低分和平均分。最后再遍历一次数组,统计高于平均分的人数即可。需要注意的是,输入数据时要考虑对输入的数据进行合法性检查,比如输入非数字字符等情况。