c语言编写程序,输入某班10名学生的成绩存放到数组a中,将a数组中不及格的成绩删除,而后输出a数组(注:每个成绩换行输出)。
时间: 2024-05-06 10:21:35 浏览: 7
好的,让我来解答这个问题。
首先,我们需要定义一个长度为10的int类型数组a,并且从用户那里获取这10个学生的成绩并存储到这个数组中。
接下来,我们会循环遍历这个数组a,查找不及格的成绩并将其从数组中删除。可以通过记录不及格成绩的个数来得到删除后的数组长度。
最后,我们遍历数组a并输出每个成绩(注意每个成绩输出后需要换行)。
以下是一个参考代码示例:
```
#include <stdio.h>
int main() {
int a[10];
int i, j, fail_count = 0;
// 获取输入
printf("请输入10名学生的成绩:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
// 删除不及格成绩
for (i = 0; i < 10; i++) {
if (a[i] < 60) {
fail_count++;
} else {
a[i - fail_count] = a[i];
}
}
// 输出结果
printf("去除不及格成绩后的结果为:\n");
for (i = 0; i < 10 - fail_count; i++) {
printf("%d\n", a[i]);
}
return 0;
}
```
相关问题
用C语言编程,输入10个学生的成绩放到数组a中,把低于平均分的成绩依次存放到数组b中并输出
好的,您可以使用以下的C语言代码实现:
```c
#include <stdio.h>
#define N 10
int main() {
int i, j, count = 0;
float sum = 0, average, a[N], b[N];
printf("请输入%d个学生的成绩:\n", N);
for (i = 0; i < N; i++) {
scanf("%f", &a[i]);
sum += a[i];
}
average = sum / N;
printf("这%d个学生的平均分是%.2f\n", N, average);
for (i = 0, j = 0; i < N; i++) {
if (a[i] < average) {
b[j] = a[i];
j++;
count++;
}
}
printf("低于平均分的成绩依次为:");
for (i = 0; i < count; i++) {
printf("%.2f ", b[i]);
}
printf("\n");
return 0;
}
```
首先,我们定义了两个数组 `a` 和 `b`,分别用于存储学生的成绩和低于平均分的成绩。
使用 `for` 循环依次输入每个学生的成绩,并将所有成绩加起来计算总分。
然后,我们计算平均分并输出。接下来,我们再次使用 `for` 循环遍历数组 `a`,将低于平均分的成绩依次存放到数组 `b` 中,并统计低于平均分的人数。
最后,我们输出低于平均分的成绩。
C语言编写程序输入10个学生的成绩放在一堆数组float score[10] 中,编写程序统计不及格的人数
好的,我可以为您编写这段程序。以下是C语言代码实现:
```
#include <stdio.h>
int main() {
float score[10];
int fail_count = 0; // 记录不及格人数
printf("请输入10个学生的成绩:\n");
for (int i = 0; i < 10; i++) {
scanf("%f", &score[i]);
if (score[i] < 60) {
fail_count++;
}
}
printf("不及格的人数为 %d\n", fail_count);
return 0;
}
```
这段程序首先声明了一个包含10个元素的浮点型数组`score`,并定义了一个整型变量`fail_count`来记录不及格人数。
接下来,程序通过`for`循环依次输入每个学生的成绩,并在输入时判断该成绩是否不及格(即小于60分),如果是则将`fail_count`加1。
最后,程序输出不及格人数的统计结果。
希望这个程序能够帮助您解决问题。如果您还有其他问题,请随时提出。