用C语言编写一个程序,输入学生人数和每个人的成绩,计算平均成绩。注意:当输入的学生人数小于等于0时,输出平均成绩为0分!例如:
时间: 2024-12-17 18:23:52 浏览: 17
在C语言中,我们可以编写一个简单的控制台程序来实现这个功能。下面是一个简单的示例:
```c
#include <stdio.h>
// 定义结构体表示学生及其成绩
typedef struct {
int score;
} Student;
// 计算所有学生的平均成绩
double calculate_average(Student *students, int num_students) {
double sum = 0.0;
if (num_students <= 0) {
return 0; // 如果学生数为零或负数,返回0分
}
for (int i = 0; i < num_students; i++) {
sum += students[i].score;
}
return sum / num_students;
}
int main() {
int num_students;
printf("请输入学生人数(大于0): ");
scanf("%d", &num_students);
// 检查输入是否有效
if (num_students <= 0) {
printf("平均成绩为0分!\n");
} else {
Student students[num_students]; // 存储学生分数的数组
for (int i = 0; i < num_students; i++) {
printf("请输入第 %d 位同学的成绩: ", i + 1);
scanf("%d", &students[i].score);
}
double average = calculate_average(students, num_students);
printf("平均成绩为: %.2f 分\n", average);
}
return 0;
}
```
在这个程序中,我们首先定义了一个`Student`结构体,然后创建了一个函数`calculate_average`用于计算平均成绩。`main`函数中,先读取学生人数并检查是否为非负数,然后根据输入获取每个学生的分数,并最终计算并输出平均成绩。
阅读全文