用c语言、有 10 个学生的学习成绩,用一个函数求平均分、最高分和最 低分。
时间: 2024-10-07 13:04:52 浏览: 58
在C语言中,你可以使用结构体来存储学生的姓名和成绩,并设计一个函数来计算平均分、最高分和最低分。首先,创建一个结构体`Student`:
```c
typedef struct {
char name[50]; // 学生姓名
int score; // 成绩
} Student;
```
然后定义一个函数`calculate_stats(Student scores[], int n)`,其中`scores[]`是一个包含所有学生分数的数组,`n`是学生总数:
```c
double average_score(Student scores[], int n) {
double sum = 0;
for (int i = 0; i < n; i++) {
sum += scores[i].score;
}
return sum / n;
}
int max_score(Student scores[], int n) {
int max = scores[0].score;
for (int i = 1; i < n; i++) {
if (scores[i].score > max) {
max = scores[i].score;
}
}
return max;
}
int min_score(Student scores[], int n) {
int min = scores[0].score;
for (int i = 1; i < n; i++) {
if (scores[i].score < min) {
min = scores[i].score;
}
}
return min;
}
```
最后,可以这样使用这个函数:
```c
int main() {
Student students[10] = {{"张三", 90}, {"李四", 85}, ...}; // 填充10个学生的数据
int num_students = sizeof(students) / sizeof(students[0]);
double avg = average_score(students, num_students);
int max = max_score(students, num_students);
int min = min_score(students, num_students);
printf("平均分: %.2f\n", avg);
printf("最高分: %d\n", max);
printf("最低分: %d\n", min);
return 0;
}
```
阅读全文