利用c语言实现:求某班某门课的平均成绩,统计超过平均值的人数(要求用指针操作数组,设该班有10人)
时间: 2024-01-21 08:16:37 浏览: 122
下面是利用C语言实现的代码:
```c
#include <stdio.h>
#define N 10
void average(int* score, int n, float* avg, int* above_avg)
{
int sum = 0;
for (int i = 0; i < n; i++)
{
sum += score[i];
}
*avg = (float)sum / n;
*above_avg = 0;
for (int i = 0; i < n; i++)
{
if (score[i] > *avg)
{
(*above_avg)++;
}
}
}
int main()
{
int score[N];
for (int i = 0; i < N; i++)
{
printf("请输入第%d个人的成绩:", i + 1);
scanf("%d", &score[i]);
}
float avg;
int above_avg;
average(score, N, &avg, &above_avg);
printf("平均成绩为:%.2f\n", avg);
printf("超过平均成绩的人数为:%d\n", above_avg);
return 0;
}
```
代码中,我们定义了一个 `average` 函数,接受一个整型数组(存储成绩)、数组长度、平均成绩的指针和超过平均成绩的人数的指针作为参数。函数首先计算平均成绩,然后遍历整个数组,统计超过平均成绩的人数,并将结果保存到指针所指向的内存中。
在主函数中,我们先输入每个人的成绩,然后调用 `average` 函数计算平均成绩和超过平均成绩的人数,最后输出结果。
阅读全文