输入学生人数和每个人的成绩,计算平均成绩用C语言
时间: 2024-11-09 13:17:24 浏览: 13
在C语言中,我们可以使用结构体来存储学生信息,包括姓名和成绩,然后通过循环和数组来计算所有学生的平均成绩。以下是一个简单的示例:
```c
#include <stdio.h>
// 定义学生结构体
typedef struct {
char name[50];
int score;
} Student;
// 函数声明,用于计算平均分
double calculate_average(int num_students, Student students[]);
int main() {
int num_students;
printf("请输入学生人数: ");
scanf("%d", &num_students);
// 创建学生数组
Student students[num_students];
for (int i = 0; i < num_students; i++) {
printf("请输入第 %d 名学生的名字: ", i + 1);
fgets(students[i].name, sizeof(students[i].name), stdin); // 防止换行符
students[i].name[strcspn(students[i].name, "\n")] = '\0'; // 清除换行符
printf("请输入第 %d 名学生的成绩: ", i + 1);
scanf("%d", &students[i].score);
}
// 计算并输出平均分
double average_score = calculate_average(num_students, students);
printf("所有学生的平均成绩是: %.2f\n", average_score);
return 0;
}
// 计算平均分数的函数
double calculate_average(int num_students, Student students[]) {
double total_score = 0;
for (int i = 0; i < num_students; i++) {
total_score += students[i].score;
}
return total_score / num_students;
}
```
在这个程序中,用户会被提示输入学生人数和每个学生的姓名及成绩。`calculate_average`函数负责累加总分并计算平均值。
阅读全文