用c语言编写程序,实现以下成绩处理功能: (1)输入10个成绩(整数类型,数组名记为a) ; (2)计算并输出最高分(记为Max)、最低分(记为Min)与成绩中值(记为Midd),其中成绩中 值为最高分与最低分的平均值(保留一位小数输出); (3)将Midd及以上的成绩归为A档,Midd以下的成绩归为B档,统计并输出A、B两档的人数。 要求最大值、最小值分别用函数max、min函数实现,其它功能在主函数中实现,max、min的结构如下: int max(int a[]) { //求数组a的最大值。 } int min(int a[]) { //求数组a的最小值。 } 运行示例:(要求输入输出按运行示例格式实现) 输入:88 59 50 74 60 99 75 90 68 70 输出:Max=99, Min=50, Midd=74.5, A=4, B=6
时间: 2024-02-18 11:05:18 浏览: 72
以下是实现该成绩处理功能的C语言代码:
```
#include <stdio.h>
int max(int a[]);
int min(int a[]);
int main()
{
int a[10];
int i, sum = 0, A = 0, B = 0;
float Midd;
printf("请输入10个成绩:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]);
sum += a[i];
}
Midd = (max(a) + min(a)) / 2.0;
for (i = 0; i < 10; i++) {
if (a[i] >= Midd) {
A++;
}
else {
B++;
}
}
printf("Max=%d, Min=%d, Midd=%.1f, A=%d, B=%d", max(a), min(a), Midd, A, B);
return 0;
}
int max(int a[])
{
int max = a[0];
int i;
for (i = 1; i < 10; i++) {
if (a[i] > max) {
max = a[i];
}
}
return max;
}
int min(int a[])
{
int min = a[0];
int i;
for (i = 1; i < 10; i++) {
if (a[i] < min) {
min = a[i];
}
}
return min;
}
```
程序的核心是在主函数中实现的,首先通过循环输入10个成绩,并计算它们的和。然后调用max和min函数分别求出最高分和最低分,并用它们计算出成绩中值Midd。接下来再循环一次数组,统计A档和B档的人数,最后输出结果。
max和min函数实现比较简单,都是通过循环遍历数组找到最大值和最小值。在主函数中调用这两个函数即可。
运行示例:
输入:88 59 50 74 60 99 75 90 68 70
输出:Max=99, Min=50, Midd=74.5, A=4, B=6
阅读全文