C语言有两个班级分别有15名和12名学生主函数分别输入两个班级的成绩,要用同一个MAX函数分别求这两个班的最高成绩
时间: 2023-12-10 08:37:11 浏览: 100
以下是一个可能的解决方案:
```c
#include <stdio.h>
int MAX(int arr[], int size) {
int max = arr[0];
for (int i = 1; i < size; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
int main() {
int class1[15];
int class2[12];
printf("Enter the scores for class 1:\n");
for (int i = 0; i < 15; i++) {
scanf("%d", &class1[i]);
}
printf("Enter the scores for class 2:\n");
for (int i = 0; i < 12; i++) {
scanf("%d", &class2[i]);
}
int max1 = MAX(class1, 15);
int max2 = MAX(class2, 12);
printf("The highest score in class 1 is %d\n", max1);
printf("The highest score in class 2 is %d\n", max2);
return 0;
}
```
在这个程序中,我们定义了一个名为 `MAX` 的函数,它接受一个整数数组和数组大小作为参数,并返回该数组中的最大值。然后我们在 `main` 函数中声明两个整数数组 `class1` 和 `class2`,并使用 `scanf` 函数从标准输入中读取各自的成绩。接着我们调用 `MAX` 函数分别计算两个班级的最高成绩,并将结果输出到标准输出中。
阅读全文