c语言 从键盘输入10个学生的某门课的成绩,调用函数1求平均成绩,再调用函数2输出不及格的成绩和人数。
时间: 2024-02-28 13:55:54 浏览: 92
好的,以下是该程序的C语言代码:
```c
#include <stdio.h>
// 求平均成绩
float avg(float arr[], int n) {
float sum = 0;
for (int i = 0; i < n; i++) {
sum += arr[i];
}
return sum / n;
}
// 输出不及格的成绩和人数
void printFail(float arr[], int n) {
int count = 0;
printf("不及格的成绩为:");
for (int i = 0; i < n; i++) {
if (arr[i] < 60) {
printf("%.2f ", arr[i]);
count++;
}
}
printf("\n不及格的人数为:%d\n", count);
}
int main() {
float scores[10];
printf("请依次输入10个学生的成绩:\n");
for (int i = 0; i < 10; i++) {
scanf("%f", &scores[i]);
}
printf("平均成绩为:%.2f\n", avg(scores, 10));
printFail(scores, 10);
return 0;
}
```
解释一下代码中的函数:
1. `avg` 函数用于求平均成绩,接收一个 float 类型的数组和数组长度 n 作为参数,返回平均值。该函数通过 for 循环遍历数组,将每个元素累加到 sum 变量中,最后除以 n 得到平均值。
2. `printFail` 函数用于输出不及格的成绩和人数,接收一个 float 类型的数组和数组长度 n 作为参数,没有返回值。该函数先定义一个 count 变量用于计数,然后通过 for 循环遍历数组,如果成绩小于 60 分,则打印出该成绩,并将 count 加 1。最后输出不及格的人数。
在 main 函数中,首先定义一个长度为 10 的数组 `scores`,然后通过 for 循环依次从键盘输入 10 个学生的成绩,接着调用 `avg` 函数求平均成绩并打印出来,最后调用 `printFail` 函数输出不及格的成绩和人数。
阅读全文